views:

1081

answers:

11

Hey guys,

I'm from a Java school, but I'd like to get my hands dirty in C/C++ development as well. Can you suggest: 1) a Lightweight beginner IDE [Eg: JCreator for Java] (Simple and small download) 2) a full-blown advanced IDE [Eg: Eclipse for Java] (Every feature and huge download) 3) should I use GCC or other compilers?

Thanks a lot guys!

+5  A: 

If you have to do it in Vista and if it is Microsoft platform-specific, then there is no better full-blown IDE than Visual Studio. You can download Visual Studio Express Edition for C++ development as a lighter IDE (Not that light though but it is free). Eclipse with GCC works great as well if you want to go cross-platform.

Aamir
+9  A: 

1) a Lightweight beginner IDE [Eg: JCreator for Java] (Simple and small download)

Eclipse with CDT (~40 MB download) or Visual Studio 2008 Express edition (2.6 MB download for installer and then tons of stuff that it'll pull from the net) -- it's free. Also, get the SP1. But, I still suggest that you take a look at Visual Studio.

2) a full-blown advanced IDE [Eg: Eclipse for Java] (Every feature and huge download)

Eclipse with CDT (~40 MB download) or Visual Studio 2008 Professional (if you are going to pay).

3) should I use GCC or other compilers?

Yes and no. Depends on your needs. GNU g++ is great to get started with. However, hooking up with CDT may prove to be difficult.

If you intend to do professional Windows programming in near future, it is best to buy the Visual Studio 2008 Pro (and install SP1) and get used to it.

dirkgently
2.6mb is only installer for VS2008 express that downloads everything it needs. It's actual size is several hundreds megabytes.
n0rd
As explained above, the 2.6 mb is an online installer. Much like an online linux live cd installer... it downloads much more content, and installs to be even more than that after the cabinets are extracted.
John T
If you're still in school, you can get VS2008 Pro from www.dreamspark.com for free.
Grant Limberg
+6  A: 

I suggest Code::Blocks. Remember to download the codeblocks-8.02mingw-setup.exe, it includes the GCC compiler and GDB debugger. With it you're ready to start :)

Andrea Ambu
+1  A: 

For really light weight, you can go without any IDE. Grab Cygwin, install GCC and start writing code in any text editor (E.g. Crimson Editor). In fact, I suggest you try this to get an idea of how C++ programs are actually compiled behind the scene of an IDE.

You can get Visual Studio Express C++, which is a good package for a beginner. Probably easiest to get started with this.

You can get Eclipse with CDT and use the Cygwin GCC tools, but this is inferior to Visual Studio in certain ways.

Then there's CodeBlock, which I've heard good things about, but don't know how it compares to Visual Studio or Eclipse/CDT.

TrayMan
You don't need Cygwin. You can use MinGW, which is a native Windows port of GCC.
Chris Lutz
That's true, but I'd recommend Cygwin over MinGW, because all of those unix tools. You can always compile native with -mno-cygwin, which uses libraries borrowed from MinGW.
TrayMan
+3  A: 

I agree that there is no better Windows IDE for C++ development than Visual Studio. Apart from the free Visual Studio Express, you might also want to consider Visual Studio Standard. It costs about $200 in the US and, among other advantages, allows you to use third-party plugins such as Visual Assist. Those will help you speed up your development even further.

Adrian Grigore
A: 

I agree with the posters above. For microsoft platform specific development, the Visual Studio environment is by far the best. The express editions are nice, but if I remember correctly, they do't come with the win32 SDK, so you still can't make windows GUI programs with it (officially)...

If all you want is to learn C++, gcc/g++ is a great free compiler and an editor with syntax highlighting should be enough. I find an IDE only adds value for larger projects, for simple test/learning projects and IDE is not that neccessary.

Emiel
A: 

You mentioned that that you know about Eclipse for Java. If you have any experience with Eclipse for Java then you can leverage most of that experience towards your C/C++ development by using Eclipse's CDT ( C/C++ Development Toolkit ) plugin.

I strongly encourage using Eclipse with CDT over using Visual Studio because any time spent learning Visual Studio will be lost if you ever want to do any Linux development.

...

I forgot to mention that Eclipse with CDT has all the important features that full version VS has ( and probably more ) ... but doesn't cost any money.

Trevor Boyd Smith
A: 

I am rather partial to the Code Gear (formerly Borland) C++ compiler line which I have been using for years. They have recently release a free 'community' addition called Turbo Explorer

Roger Nelson
A: 

Netbeans is also very good IDE with many futures in it.

Dmitris
+1  A: 

Do you want to just learn C++ or use C++ to interact with Vista components? The title of your question says Vista but your description is asking which IDE to use.

I agree using Visual Studio C++ Express is a great place to start. It will basically give you the foundation for writing Windows Apps with C++. You said you're from the JAVA world and if you have experience with C# or VB.NET, don't expect all the designers and wizards to be here in C++. Anyone who had done C++ GUI work knows that this isn't always the case. Not to discourage you, there are designers, just not for everything.

If you want to learn how to interact with Windows through C++, the VC++ main site is here, and the how-do-i videos here, also download the feature pack if you haven't installed SP1 yet is here, besides ribbonizing MFC, they've included Boost in the STL, which is awesome. And finally, the guided tours are here.

Also, you don't technically need MFC to write GUI applications, you can call Win32 API functions directly, but MFC is a foundation and will help.

That should get your started. If you need more help, just post a comment.

Chris
A: 

1 vote for Eclipse.

plan9assembler