I want to start Learning

I want to start leaning C++. What are the differences between C++ & VC++? I have a weekend crash course book on VC++, but if they are totally different I wont bother.(I didn't care for VB.NET). What about learning PHP first? I heard that could be useful. What books would any of you recomend for getting started.

C++ is the language, for which several compilers have been written for several platforms (DOS/Windows, UNIX, Linux, MacOS, etc). A standard has been/is being established for this language which all compilers must support if they are to be deemed compliant.

VC++ is one particular compiler and development system. In particular, it is Microsoft's. It will/should compile any C++ program that follows the standard and which does not contain any system/platform specific code that is incompatible with the DOS/Windows platform.

In addition, VC++ has additional functions and data structures to support systems programming on the DOS/Windows platform, including several of Microsoft's APIs for Win32. It also has the Microsoft Foundation Classes (MFC), a set of classes called a framework which encapsulate much of the working code for writing Windows applications. VC++'s development environment is oriented heavily towards supporting MFC development.

And now there's .NET, which apparently goes beyond MFC. I haven't done anything in VC++.NET, but there have been a number of questions posted here about it. For one thing, any programs created with it can only run in a .NET environment. Also, in my experience with VB.NET (taking the class now) there are compatibility issues between different versions of .NET, such that a program written with .NET v1.1 will not run on a system with v1.0. Kind of reenforces my distrust of .NET.

My recommendation would be that if you get VC++ then try to stick with VC++v6 instead of .NET, but if you cannot avoid it then you cannot avoid it. There are also several C++ compilers to choose from, some of which are free; eg, Dev-C++ and Borland's C++-Builder v5.5 command-line version.

As for books to learn from, I'm too long in the tooth to help you much there; much of what I learned on is out-of-date and I'm not familiar with the new beginners' books. I've heard good things about Ivor Horton's Beginning C++ (Wrox Books). Be advised that there are two different books: Beginning C++ covers C++ only while Beginning Visual C++ covers C++ in the first third-to-half of the book and then MFC for the rest of the book.

As for PHP, I've not studied it yet. My understanding is that it is mainly Web-based, whereas C++ is not (though part of the .NET hype is that it allows you to write web apps in C++). I also understand that it has less of a learning curve than C++ does, but you'll have to get the straight skinny from someone who's done both.

Now some of the young guys here can give you their suggestions.

Oh, and good luck and have fun! C++ is a powerful and expressive language. It was the first programming language that I actually got excited about.

I started out with c/c++ and have since adopted php. the two languages are very similiar but i understood php because i had learned c++. C++ was good to learn, and is still good to learn but the only use i ever have for it is for making stupid dos prompt tic tac toe games and turning in assignments written in it. While C++ is a very powerful language, you can do much more with php in a shorter amount of time, i believe, than you can with c++ since it is web based. I've since modified a php subscription software program into a book trading website /*plug*/(sellmytextbooks.com) with it that is tons cooler than any tic tac toe game. Hence i created something tangible and worth more than the tic tac toe game. It kind of all depends on what you enjoy doing and what you want to get from it. Good luck and happy coding.