• 0

[C/C++] Best IDE for beginners?


Question

What is the best C/C++ IDE for beginners? I was thinking Visual C++ but I want to create Win32 apps, not Winforms apps.I also want a good resource editor (including one that creates menus and dialogs).

Link to comment
Share on other sites

Recommended Posts

  • 0

I mean native code, not managed.

C++ compiles to native code. Visual C++ allows you to develop in C++. Visual C++ also allows you to develop in C++/CLI which compiles to a .net assembly and is not the same language.

Win32 is the native Windows API. A C++ application may or may not use it, so don't confuse native with Win32. That's a Microsoft-ism. Even a .NET application can use the Win32 API, so Win32 doesn't imply "native code" and native code doesn't imply "Win32".

  • Like 3
Link to comment
Share on other sites

  • 0

C++ compiles to native code. Visual C++ allows you to develop in C++. Visual C++ also allows you to develop in C++/CLI which compiles to a .net assembly and is not the same language.

Win32 is the native Windows API. A C++ application may or may not use it, so don't confuse native with Win32. That's a Microsoft-ism. Even a .NET application can use the Win32 API, so Win32 doesn't imply "native code" and native code doesn't imply "Win32".

Good post! :)

Link to comment
Share on other sites

  • 0

If you just want to work with standard C++ and you are a begginer then I would suggest using CodeBlocks as a C++ IDE. However, if you are looking to create visual applications and are experianced in C++ and Visual C, then I would recomend using Microsoft Visual Studio with Visual C++ as the building language.

Link to comment
Share on other sites

  • 0

I wouldn't even waste my time learning/using win32. It's outdated (even though it's still used), poorly documented, poorly written tutorials, poorly designed and written. You're better off using a better toolkit, that wraps around that stuff and gives you much better stuff like SSL sockets, XML, Scripting, etc like Qt offers. I've been using Qt for over 3 years and I am really happy with it. The only time you have to mess with raw win32 is when there is no features (which is rare). You'll spend 30-50x more time using win32 than in Qt. Also, stay away from MFC.

Link to comment
Share on other sites

  • 0

I wouldn't even waste my time learning/using win32. It's outdated (even though it's still used), poorly documented, poorly written tutorials, poorly designed and written. You're better off using a better toolkit, that wraps around that stuff and gives you much better stuff like SSL sockets, XML, Scripting, etc like Qt offers. I've been using Qt for over 3 years and I am really happy with it. The only time you have to mess with raw win32 is when there is no features (which is rare). You'll spend 30-50x more time using win32 than in Qt. Also, stay away from MFC.

ok.. 2 questions. How can I learn how to use Qt? And what's wrong with MFC? (For one thing I have no idea what MFC is other than that it stands for Microsoft Foundation Classes)
Link to comment
Share on other sites

  • 0

ok.. 2 questions. How can I learn how to use Qt? And what's wrong with MFC? (For one thing I have no idea what MFC is other than that it stands for Microsoft Foundation Classes)

http://doc.qt.nokia.com/latest/tutorials.html

The reason to stay away from MFC is that still is buggy, complicated to use, lacks more tutorials than win32. It's not really any easier to use. You will have to use the raw functions of win32 to achieve anything effective.

The reason to use Qt is the well written documentation (http://doc.qt.nokia.com/latest/index.html), the simplistic ease of making an application work on Mac, Linux, Windows with minimal changes (if you care for that). no need for 3rd party classes for proper resizing of a dialogue. Ton of modules to have (http://doc.qt.nokia.com/latest/modules.html) at your disposal. No more painful resource editor to embed files like pictures, scripts, etc. Easy to make a single executable that supports any translation unlike other toolkits like win32 and MFC which require a single executable for each different language (this is what I have always seen). No hungarian notation. Full unicode support. No need to ever use the char* (except for networking) unlike MFC and win32. It's far easier to create custom widgets like checkboxes, buttons, urls in a grid view for instance. You rarely have to manage your memory, pointers, etc in QT when you understand how to use Qt properly.

If you have any other questions, I will answer them.

Oh btw Qt has it's own IDE (if you use the SDK).http://qt.nokia.com/products/developer-tools/

Link to comment
Share on other sites

  • 0

What is the best C/C++ IDE for beginners? I was thinking Visual C++ but I want to create Win32 apps, not Winforms apps.I also want a good resource editor (including one that creates menus and dialogs).

Visual Studio (the IDE used across all of Microsoft's developer tools) is more than just WinForms - it is *still* a full-featured Win32 IDE. While it can (with the Windows Developer Preview add-ons) be used to create WinRT/Metro/Windows Phone applications, it can still be used (even running on WDP) to create traditional Win32 applications.

Link to comment
Share on other sites

  • 0

If you just want to work with standard C++ and you are a begginer then I would suggest using CodeBlocks as a C++ IDE. However, if you are looking to create visual applications and are experianced in C++ and Visual C, then I would recomend using Microsoft Visual Studio with Visual C++ as the building language.

I started off C++ programming using the old Learning C++ (and the IDE that preceded the implementation of Visual Studio 97); however, when Learning C++ was deprecated and VS became a replacement for the old Learning C++ product, I lost nothing. Programming tools are still what you make of them - Qt is nice *if* you are developing for more than Windows; however, if you are looking specifically to write *Windows* applications (not necessarily .NET/WinRT), I still haven't found a better IDE for that task than Visual Studio.

Link to comment
Share on other sites

  • 0

Qt is nice *if* you are developing for more than Windows; however, if you are looking specifically to write *Windows* applications (not necessarily .NET/WinRT), I still haven't found a better IDE for that task than Visual Studio.

Not true, as that is an opinion, rather than a fact. I know a lot of people who only develop on Windows using Qt. You probably won't be able to use Metro for awhile until Nokia (if there is a way to wrap around Metro to allow it in Qt). But Qt is usefully even if you only use Windows is bullocks.

Link to comment
Share on other sites

  • 0

There's also a few other IDE's that u could use for win32 C++.. Such as the updated version of dev-C++ 5.0.0.8 found at http://orwellengine.blogspot.com/ or you could use wxDev-C++ http://wxdsgn.sourceforge.net/

When I try to run the installer for wxDev-C++ I get this screen (see attachment). I'm running Windows 8 developer preview.

post-162889-0-60881100-1323113306.png

Link to comment
Share on other sites

  • 0

When I try to run the installer for wxDev-C++ I get this screen (see attachment). I'm running Windows 8 developer preview.

I wouldn't use the IDE. It isn't any improvement over the regular one. Just use Visual Studio.

Link to comment
Share on other sites

  • 0

Qt is certainly a good recommendation, but if you're just starting out with C++, you shouldn't be making graphical applications right away. You must learn basic C++ first, understand it, and then you can use any framework you'd like. C++ is already a tough pill to swallow, don't mix it with some 3rd-party API at the same time, it'd be overwhelming. Install VC++, follow a good tutorial like this, see what you can do, what you can't do, and then go pick what you need in terms of libraries/frameworks, when you actually have a chance of understanding what you're doing.

Honestly though if your objective is to make graphical applications I don't know why you want to use C++. Basically anything else (any .net language, any jvm-based language, python, etc) would be an order of magnitude easier to learn and more productive.

Link to comment
Share on other sites

  • 0

Qt is certainly a good recommendation, but if you're just starting out with C++, you shouldn't be making graphical applications right away. You must learn basic C++ first, understand it, and then you can use any framework you'd like. C++ is already a tough pill to swallow, don't mix it with some 3rd-party API at the same time, it'd be overwhelming. Install VC++, follow a good tutorial like this, see what you can do, what you can't do, and then go pick what you need in terms of libraries/frameworks, when you actually have a chance of understanding what you're doing.

Honestly though if your objective is to make graphical applications I don't know why you want to use C++. Basically anything else (any .net language, any jvm-based language, python, etc) would be an order of magnitude easier to learn and more productive.

I agree with a lot you say. I've been using C++ for almost 4 years and I don't understand a lot of it, but I'm still learning everyday. I would never recommend cplusplus.com. The tutorials are really awful. Every C++ coder would agree with me. I would recommend that he buys a book on the language, rather than wasting time learning from crappy tutorials written buy crappy C programmers, who still think using C stuff in C++ is better. This is the book that I have used to learn C++: http://www.amazon.com/Complete-Guide-Programming-C/dp/0763718173/ref=sr_1_1?s=books&ie=UTF8&qid=1323332235&sr=1-1 .I also recommend C++ Primer (not the C++ Primer Plus).

Link to comment
Share on other sites

This topic is now closed to further replies.