Hey,

I want to build some form application for Windows and i have tryed usind VS2010 but because IntelliSense is disabled for C++ i'm not able to work normaly as i'm fairly new to programming and i need to see the drop out menus after i use the "->" operator. Before i was using Borland Delphi, but i would like to switch to something else like VS. Can somebody please suggest a good dev. environment for c++ to run on Windows?

Thank you

I use VS2010, and can tell you that IntelliSense works just fine in C++.
perhaps you have an incorrect setting.

get Visual Studio 2012. I have not had any problems with intellisense. IMO you shouldn't learn to probram with an IDE that has intellisense anyway, you learn a lot better and fasteer if you have to completely type everything yourself. Nothing like good repetition to pound things into your brain.

Before i was using Borland Delphi, but i would like to switch to something else like VS.

If you are familiar with Borland Delphi, it might be easiest to use Borland C++Builder. The problem is that it is not available for free (beyond a 30 day trial). It is a decent product, very much like Delphi (and the compiler shares the same back-end as the Delphi compiler, which means libraries can natively link between them, e.g., the VCL (GUI library) used in C++Builder is in fact the Delphi one (with C++ headers)).

i have tryed usind VS2010 but because IntelliSense is disabled for C++

Intellisense is certainly not disabled for C++, at least, not by default (and it's actually kind of difficult to disable completely, even if you want to). However, Intellisense will require that you have the code setup properly as a "project" with all the relevant cpp file added to it, all the needed include-paths set, and so on. If you are just editing source files without being within a project / solution, Intellisense cannot really do much, and it doesn't.

Can somebody please suggest a good dev. environment for c++ to run on Windows?

A pretty good, easy and fast IDE for Windows would be CodeBlocks or Qt Creator. In both cases, you would normally use the GCC compiler (under MinGW), which is pretty much the best (free) compiler overall. You can get CodeBlocks that includes MinGW here, and it is a pretty good and light-weight IDE for C++. I also suggest Qt Creator because it has tighter integration with Qt (a GUI library) which you might like if you come from the world of Delphi and Borland RAD tools (RAD: Rapid Application Development), and Qt Creator is one of the better GUI-RAD IDEs for C++, and it is also quite decent as an IDE period (i.e., even when you're not doing any Qt stuff).

Then, the alternative is VS2012 (or 2010). These products are very heavy-weight and far from the best for C++, but still they have a couple of undeniable advantages, mainly a good debugger and a wide user-base (can you tell that I have a hard time finding anything good to say about VS products?... I'm really not a fan).

i'm fairly new to programming and i need to see the drop out menus after i use the "->" operator

This is a sticky point in Windows. At your skill level (not dealing with advanced C++ techniques or large and complex libraries), any IDE will have good enough code completion. The code completion in CodeBlocks and Intellisense are both as good, IMO, although Intellisense has more bells and whistles (but is also slower). But, at higher skill levels and for more complex libraries, the only really good code completion system is in KDevelop (not available in Windows, except under Cygwin), and all the others die of a heart attack if you ask them to deal with a large or complex library (100 thousand lines and up, plus external dependencies) (and have to be disabled).

Also, I totally disagree with Ancient Dragon, code completion is really nice to have regardless of skill level, and you certainly don't need to suffer the extra typing to "learn" programming properly. IMO, whatever makes things easier is better, and code completion also helps you develop the habit of choosing long and meaningful names for variables / classes / functions, which is a good habit to develop (but would lead to more typing if you don't have code completion to help you).

Also, I totally disagree with Ancient Dragon, code completion is really nice to have regardless of skill level, and you certainly don't need to suffer the extra typing to "learn" programming properly

I learned to program a long time before intellisense was invented. I find intellisense annoying and slows down my coding. If I didn't know what methods/properties were available I had to look them up in a book, which means I learned a lot more than what I had intended to learn.

I'm with Ancient Dragon on this, but I go further; I generally recommend that beginners use a relatively simple text editor and they compile/link their code manually at the command line. The number of people who turn up, having been programming for a year, trying to fix an "undefined reference" link error by messing with their source code is ridiculous. :)

Edited 3 Years Ago by Moschops

Well, code completion is good when you're dealing with a large application, and when you have lots of classes, with similar names/functions/members. Related to small applications, I do like to type everything, because:
1. when you need something, you have to go search it first in your brain, than in your souce code;
2. there are chances you might get better ideas related to your program;
3. you'll remember some techniques, which will come in handy in the future.

For example, when I start a small application this is the usual pattern that flows from my hands, even though I'm not currently 100% there with my mind:

#include <iostream>
using namespace std;

int main(){

    return 0;
}

It's like that letter pattern:

Dear Mom,

//insert letter message here.

With love, 
John.

Edited 3 Years Ago by Lucaci Andrew

Hey,

Thank you for your comments, i'm downloading Codeblocks right now, will see what i can do with it. I actualy used it before when i started learning c++, not sure if it's possible to build form apps with it.

Regarding VS2010, i'm getting the following error "Intellisense 'Unavailable for C++/CLI" when using "->" or "::" anyone knows how to correct this error?

Thank you

Regarding VS2010, i'm getting the following error "Intellisense 'Unavailable for C++/CLI" when using "->" or "::" anyone knows how to correct this error?

Microsoft did not provide the Intellisense feature for C++/CLI in VS 2010, in VS 2012 it is available though -- i.e., you may want to switch to VS 2012 altogether.

Unavailable for C++/CLI

C++/CLI and C++ are not the same thing. I assumed you were talking about C++. So, for C++/CLI, the only option is VS2012.

This article has been dead for over six months. Start a new discussion instead.