I'm getting into some heavier programming in C++ and need to start using an IDE to better manage my code and projects.
My requirements are as follows:
- I must be able to make a new class very easily, for example put the new class name into something that generates a header file and sets up include guards
- I need to be able to change a name of a class and refactor every instance of the previous name to reflect the update.
- And most importantly it must be available on Linux (Mint/Ubuntu/Debian). This is the hardest part as I know Visual Studio does pretty much what I'm looking for except for the whole Windows part.
Code::Blocks can do all of that as well, I'm fairly certain. It has a class wizard, and you can perform a copy/replace throughout all files, which should serve your purposes (though last I checked it doesn't have a 'refactoring' method as such, so classes of the same name in different namespaces will bring troubles). If you need it, you can write plugins for it (keep in mind it uses wxWidgets), so you can add any missing functionality you might want. Have a look at it at http://www.codeblocks.org/
I've been using QtCreator exclusively for quite some now. So far I'm very pleased and I find it infinitely more usable than Visual Studio. It's quicker and the keyboard shortcuts are so much better! My projects aren't huge and maybe it's lacking features for more professional projects that are huge with nested dependencies and stuff but for everyday stuff everything is there.
For my uses (and from what you write yours as well) it's ideal. And despite its name you can use it for projects that don't use Qt as well. I hardly ever actually use Qt in my projects.
Ah, yes, I forgot about Qt Creater! As MrSandman pointed out, that is another very good IDE, which does have inbuilt refactoring tools. Also cross platform.