Reputation: 6254
What is the best C++ IDE or editor for using on Windows? I use Notepad++, but am missing IntelliSense from Visual Studio.
Upvotes: 74
Views: 1212003
Reputation: 151
Ultimate++ if you want to program for both Linux and C++ also you have the choice to choose your compiler.
Upvotes: 0
Reputation: 125
Personally, I have found Bloodshed's Dev-C++ to be very good. However, I do not recall an update in a very long time. I have, because of this, switched over to NetBeans for everything.
Upvotes: 1
Reputation: 334
Use Visual Studio 2010. You can get the full version free with DreamSpark
Upvotes: 2
Reputation: 1
How about CodeBlocks, i find it so fine with me, especially the new 10.05 version.
Upvotes: 3
Reputation: 1
c++ IDE for MSWindows 1-Visual Studio 2-CodeBlocks (nighitly build) others (devcpp, netbeans, eclips,...) just sucks, dont waste your time
Upvotes: 1
Reputation: 12252
I'm a bit surprised because nobody has mentioned Codeblocks: http://codeblocks.org I think it is probably one of the best IDE's for C++. It is specially useful if you do multiplatform programming, since it is available for Linux, Mac and Windows, and it uses the same project files for all versions. It works perfectly with mingw, allowing you to even perform cross-compiling. It also directly supports wxWidgets visual development.
Upvotes: 1
Reputation: 1699
The question says specifically IDE so I am guessing thats what you want. In that case, the main options are Visual Studio and Eclipse CDT as stated above. Of those, I personally prefer Eclipse. However, don't necessarily limit yourself to an IDE. I prefer to use vim as my editor and WinDbg as my debugger. For compilation, your project will probably dictate this. I currently use NMAke on the command line.
Upvotes: 2
Reputation: 5351
It looks like you did not mention Ultimate++ iDE. It is quite fast. It is not perfect as Visual Studio but it has several useful features such as function list, it shows which function you are in,searches, multiple releases, package system, a gui designer a faster container library. Code completion...
Upvotes: 1
Reputation: 553
Dev C++ is also a nice IDE. It's not so user friendly, but it's usefull.
Upvotes: -1
Reputation: 61
Visual Studio BUT...
Go get ReSharper plugin from http://www.jetbrains.com/resharper/index.html. I'm a Java developer who uses IntelliJ and ReSharper gives a lot of the IntelliJ functionality to Visual Studio.
Upvotes: 1
Reputation: 19772
My favorite IDE was good old msdev.exe
, a.k.a., Microsoft Development Studio, a.k.a., Microsoft Visual C++ 6. It was the last version of Visual C++ that didn't require me to get new hardware just to run it.
However, the compiler wasn't standard-compliant. Not even remotely.
Upvotes: 1
Reputation: 6566
I think the anwser to this question depends on following question:
Do you want to develop cross-platform applications ?
If the anwser to this question is a clear YES, than you should start right away with some IDE that support cross-platform compilers like gcc/mingw.
Personally ive tried CodeBlocks and QtCreator beside VS...
If developing cross-platform software using Qt, surely QtCreator is the best choice.
Since QtCreator is still a quite new IDE, it still has some bugs... for example it's "intelli-sense" doesnt support namespace aliaces yet.. but i think it will evolve pretty fast, to a very good and complete IDE.
Codeblocks is a quite "small" IDE, but has everything an IDE needs. Still its "Intelli-Sense" (especially when dealing with meta-programming stuff like boost), and debugger is less powerful than VS's.
Upvotes: 1
Reputation: 1
personally i dont like microsoft......I hate to admit that visual studio is the best IDE i ever use.....Netbeans is gud but drasticaly slow....other free IDEs are useless.. so people try to stick with VS....
Upvotes: 2
Reputation: 1705
I think it's largely a matter of taste, but I would recommend begginers to stick to a pure editor (vi, emacs...) instead of a full fledged IDE so they can figure out the whole toolchain that modern IDEs hide.
Just for the record, my weapon of choice is Emacs.
Upvotes: 2
Reputation: 9208
I will quote myself from this question: https://stackoverflow.com/questions/780837/what-is-a-good-linux-ide-for-code-completion/917854#917854
Someone already said this before me, but QtCreator is really good for Qt4 development.
Not only it has a really good code completion support. It also knows a little more about the code and what to complete then I thought I needed. For example it knows about slots/signals. This means that connecting slots/signals via code is much easier then before.
The code editing is really nice. I remember that when refactoring code, (a few variables starting with underscore) it remembered the cursor position between lines and this made the refactoring much easier. The code indentation is smart enough to not get in my way (KDevelop was configurable, but QtCreator learns how I code. At least it feels like it does).
Then there are the cool key combinations. Most of the functionality of the IDE can be accessed using shortcuts. The "control+k" thingie is a nice thing, which some command line users would like, but I am more GUI oriented. I don't use it.
What I really like, is the split window command. Yes, KDevelop3 does it, but not as nice as QtCreator. My favorite is control+e,3 which I use to display the header and implementations of my classes. Once again, the navigation here is the best I have seen (control+e,o).
It also has a nice SCM integration. I usually use SVN, and quite frankly it's not as good as I need: no shortcut to diff the project, no diff to commit the whole project, no option to commit several files.
I also don't like the "total integration of external tools". I still like the external QtAssistant - control+tab is easier to read large articles. But.... when you define a QString s, and 3 lines bellow you want to read the interface of QString, you put your cursor on "s" and press F1 - the assistant comes as a sidebar with QString's documentation. A huge advantage.
Want to follow a definition? F2 to the help. F4? Changes header/implementation (yes, eclipse does this better...).
The debugger is good. It's not as good as VisualStudio but ... it has support for Qt4 internals (you can see the value of QString and QList!).
I can continue... but IMHO you will need to give it a second and third try. It really is a good product. Not as flexible as Eclipse (hi ryansstack), but it's a really small, fast and young project. I stopped developing QDevelop because I really found what I was looking for.
ps: yes, I mean stopped developing QDevelop. I was in the development team.
My response is for Qt4 development only. Be warned.
Upvotes: 4
Reputation: 378
Here's another vote for Visual Studio. The debugger and Intellisense are definitely it's hallmarks. While other IDE's offer code-completion, I've often found them to be somewhat sluggish in this area for some reason (sluggish being a reference to the speed at which code-completion occurs and offers selections).
Other than VS, NetBeans is a good polished IDE and is updated on a very regular cycle.
Upvotes: 2
Reputation: 26082
With Intellisense, code folding, edit and continue, and a whole host of other features, Visual Studio is certainly the best IDE. However, for simple code editing, I often use UltraEdit. It has some great features not found in Visual Studio. One surprisingly useful feature is being able to select a column in the editor. You can find and replace within the column (useful for tabs vs. spaces wars...) delete the column, etc...
Upvotes: 3
Reputation: 10288
One that hasn't been mentioned is CodeLite, a powerful open-source, cross platform IDE. It has code completion amongst other features.
Upvotes: 5
Reputation: 6029
If you are interested in doing Qt development, then Qt Creator works fine and is free.
Upvotes: 10
Reputation: 40319
I've tried SlickEdit, Notepad++, emacs, jEdit and Visual Studio. VS wins hands-down for Best Windows IDE.
jEdit is probably the best GUI cross-platform editor/almost-IDE, and emacs is probably the best terminal cross-platform editor/almost-IDE. The advantage with using these is that when you jump to a Mac or Linux box, you know how they work.
I tried Eclipse, but it ran like a no-legged dog it was so slow, so I didn't use it much. Maybe tech is better now, but eh.
Upvotes: 3
Reputation: 2387
Visual studio is great, but there are few tricks you can enhance it with. SonicFileFinder is one - helps you to search source files by partial match. You can map solution-tree to Alt+1, partial filename search to alt+2, and properties-window to alt+3. These are the three most used windows.
Another great tool that is ofter misunderstood is ctrl+shift+F shortcut for searching file contents. People dont use because it's so slow, but my advice is - deal with it. Searching the whole solution (or even all files in project folder) is only slow the first time you use it. Consequitive searches are as fast as jump-to-definition-feature.
Upvotes: 3
Reputation: 41259
Visual studio is the most up to date and probably "best" free ide. Dev C++ is a little dated, and mingw doesn't compile most of boost, (except regex). Most of the other compilers are dated and fading, like mars and borland. But you can use whatever you like!
Upvotes: 5
Reputation: 10580
The Zeus editor has support for C/C++ and it also has a form of intellisensing.
It does its intellisensing using the tags information produced by ctags:
alt text http://www.zeusedit.com/images/_lookmain.jpg
Upvotes: 5
Reputation: 7773
Emacs. Xemacs works fine under Windows. For using it as an IDE, I recommend running it under Cygwin.
Upvotes: 5
Reputation: 4307
I would recommend C++Builder, from Embarcadero, for C++ work and there is also a free version available. If you prefer Visual Studio, download one of free express editions.
Upvotes: 2
Reputation: 19243
VIsual studio is by far the best IDE but you can also take a look at Code::Blocks
Upvotes: 11