I am an automation programmer… I do all of the programming for the automated manufacturing equipment, operator interfaces, and data collection systems for a pharmaceutical manufacturer. I’ve decided to learn some C++ in my spare time to try to open up some career path options.

I’ve been using Visual C++ 2010 as a development environment (Empty Console Application). The more I read, books and sources discuss various different compilers, and the strategies/advantages/disadvantages of each… am I robbing myself of some critical piece of the puzzle by using Visual C++ 2010? Would it be more beneficial to move to a different compiler while I’m still learning the ins and outs?

Most of the books and references don’t make a compiler recommendation; they simply talk about “the compiler you are using.” I’m not certain what criteria I should be using to select one. Is Visual Studio truly so much of a “crutch” that I should be wary of it?

08-09-2011

manasij7479

Why do you think so ? I don't see any reason to move unless you find something not compiling. The only piece of puzzle you are missing is probably what the IDE automates for you.

08-09-2011

frazeebd

I guess my question then is... when I use Visual C++ 2010 to create an Empty Console Application, is it automating anything in the background that I a) don't know about and b) should know about as I'm learning?

08-09-2011

manasij7479

Probably not. Even if so, you could do it from the command line once in a while (especially in programs containing multiple source files) to clear up confusions about the build process. Also write the makefile (or its equivalent; in this case) once in a while.

08-09-2011

AndrewHunter

Quote:

Originally Posted by frazeebd

I guess my question then is... when I use Visual C++ 2010 to create an Empty Console Application, is it automating anything in the background that I a) don't know about and b) should know about as I'm learning?

No, it is not automating anything in the background. The thing you should know about while you are learning is that Microsoft Visual C++ is not C99, it operates under C89 and they have no plan to change it. Thus some of the new features present in C++11 are not implemented in Visual Studio.

08-09-2011

laserlight

Quote:

Originally Posted by AndrewHunter

The thing you should know about while you are learning is that Microsoft Visual C++ is not C99, it operates under C89 and they have no plan to change it. Thus some of the new features present in C++11 are not implemented in Visual Studio.

That reasoning does not follow though since C++11 is not a superset of C99, even though it makes reference to parts of C99.

08-09-2011

AndrewHunter

Quote:

Originally Posted by laserlight

That reasoning does not follow though since C++11 is not a superset of C99, even though it makes reference to parts of C99.