In the first edition ofThinking in C++, Bruce Eckel synthesized years of C++ teaching and programming experience into a beautifully structured course in making the most of the language. The book became an instant classic, winning the 1995Software Development Jolt ColaAward for best book of the year. Now, inThinking in C++, Volume I, Second Edition, Eckel has thoroughly rewritten his masterpiece to reflect all the changes introduced in C++ by the final ANSI/ISO C++ standard. Every page has been revisited and rethought, with many new examples and exercises throughout -- all with a single goal: to help you understand C++ "down to the bare metal," so you can solve virtually any development problem you encounter. Eckel begins with a detailed look at objects and their rationale, then shows how C++ programs can be constructed from off-the-shelf object libraries. This edition includes a new, chapter-length overview of the C features that are used in C++ -- plus a new CD-ROM containing an outstanding C seminar that covers all the foundations developers need before they can truly take advantage of C++. Eckel next introduces key object-oriented techniques such as data abstraction and implementation hiding. He then walks through initialization and cleanup; function overloading and default arguments; constants; inline functions; name control; references and the copy constructor; operator overloading; and more. There are chapters on dynamic object creation; inheritance and composition; polymorphism and virtual functions, and templates. (Bonus coverage of string, templates, and the Standard Template Library, can be found at Eckel''s web site.) Every chapter contains many modular, to-the-point examples, plus exercises based on Eckel''s extensive experience teaching C++ seminars. Put simply, Eckel has made an outstanding book on C++ even better. For all C++ programmers, and for programmers experienced in other languages who want to strengthen their C++ and object development skills.