If you are going to buy C++ How To Program, you need to buy the 6th Edition, not the 5th. I have the book and it VERY thoroughly covers the C++ language. In the 6th Edition you can expect by the end of the book to have an excellent grasp on not only the fundamentals, but advanced topics and the STL. The 6th Edition teaches OOP from the start, opening with a chapter on Classes. The book is structured so that in most chapters you are continuing to build a grade book application. There are extensive exercises, best practice notes, common errors, and performance notes. There are also several sections that walk you through documenting an ATM system as you learn UML and programming the system in an OO fashion. The book covers legacy code, number systems, debugging, etc... and you will also get exposure to the Boost library as well as a quick and dirty intro to game programming with the Ogre3d libraries. Overall I was very pleased with the book and the manner in which it was written. It also helps that it is in color. My only complain is the poor binding.