views:

129

answers:

3

We have a rather large codebase in C++ here that needs some refactoring; since it's generally bad to start from scratch, I was wondering if there were any good free code refactoring tools for Visual Studio 2005/Visual C++ 8.0?

+1  A: 

I don't know how good it is since I don't use it (I use the non-free Visual Assist), but DevExpress has Refactor! for C++, which is free as in gratis. It's specified to work with VS2005 and VS2008. It's the only free one I'm aware of (outside of whatever refactorings are built in to Visual Studio).

Note, however, that I don't think it'll work in the free Visual Studio Express.

Michael Burr
@Burr It's not the free Visual Studio Express that I'm using. I'm using the full version of Visual Studio 2005.
leeand00
+2  A: 

I know I'm not exactly answering your question, but I recommend Visual Assist X. Download a trial and checks if it attends to your needs, because I think it's worth every dollar. It has been some time since I last used the software (mostly because now I use C# rather than C++ in my projects), but it was a vital tool for me when I was working for a company that developed games (which are quite complex in nature).

Bruno Brant
I'd also recommend VAX - it's been a long while since I tried Refactor! for C++, but when I did I found VAX to be preferable (to me anyway) even though Refactor! was free and VAX wasn't. VAX has increased in price in the meantime, but I'd still agree with Bruno and suggest that you evaluate it.
Michael Burr
+1  A: 

Other than DevExpress's Refactor! for C++ (which I'd forgotten about, thanks Michael), the only free solution I'm aware of is to install Eclipse CDT, use its refactoring support when you need to refactor, and use Visual C++ for everything else. A bit ugly, but it works.

Josh Kelley
As long as there are tab stop settings for Eclipse CDT I can probably get away with it. Are there?
leeand00
Yes, Eclipse lets you set the tab width, set indentation, and optionally insert spaces for tabs. In general, AFAIK, Eclipse's formatting is more configurable Visual C++'s.
Josh Kelley