Fully revised and beefed up with plenty of new material on today's Standard C++, the new edition of Bruce Eckel's Thinking in C++: Volume I is an excellent tutorial to mastering this rich (and sometimes daunting) programming language, filled with expert advice and written in a patient, knowledgeable style. The effective presentation, along with dozens of helpful code examples, make this book a standout. The text first sets the stage for using C++ with a tour of what object-oriented programming is all about, as well as the software design life cycle. The author then delves into every aspect of C++, from basic keywords and programming principles to more advanced topics, like function and operator overloading, virtual inheritance, exception handling, namespaces, and templates. C++ is a complex language, and the author covers a lot of ground using today's Standard C++, but without getting bogged down in excessive detail.
1: Introduction to Objects 2: Making & Using Objects 3: The C in C++ 4: Data Abstraction 5: Hiding the Implementation 6: Initialization & Cleanup 7: Function Overloading & Default Arguments 8: Constants 9: Inline Functions 10: Name Control 11: References & the Copy-Constructor 12: Operator Overloading 13: Dynamic Object Creation 14: Inheritance & Composition 15: Polymorphism & Virtual Functions 16: Introduction to Templates A: Coding Style B: Programming Guidelines C: Recommended Reading Index