Synopses & Reviews
In the first edition of Thinking in C++, Bruce Eckel synthesized years of C++ teaching and programming experience into a beautifully structured course in making the most of the language. It became an instant classic, winning the 1995 Software Development Jolt Cola Award for best book of the year. Now, Eckel has thoroughly rewritten Thinking in C++ to reflect the final ANSI/ISO C++ standard. Every page has been revisited and rethought, with many new examples and exercises -- all designed to help you understand C++ "down to the bare metal," so you can solve virtually any problem. Eckel starts with a detailed look at objects, showing 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 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.
Review
"This book is a tremendous achievement. You owe it to yourself to have a copy on your shelf. The chapter on iostreams is the most comprehensive and understandable treatment of that subject I've seen to date." Al Stevens Contributing Editor, Doctor Dobbs Journal
"Eckel's book is the only one to so clearly explain how to rethink program construction for object orientation. That the book is also an excellent tutorial on the ins and outs of C++ is an added bonus." Andrew Binstock, Editor, Unix Review
"Bruce continues to amaze me with his insight into C++, and Thinking in C++ is his best collection of ideas yet. If you want clear answers to difficult questions about C++, buy this outstanding book." Gary Entsminger Author, The Tao of Objects
"Thinking in C++ patiently and methodically explores the issues of when and how to use inlines, references, operator overloading, inheritance and dynamic objects, as well as advanced topics such as the proper use of templates, exceptions and multiple inheritance. The entire effort is woven in a fabric that includes Eckel's own philosophy of object and program design. A must for every C++ developer's bookshelf, Thinking in C++ is the one C++ book you must have if you're doing serious development with C++." Richard Male Shaw Contributing Editor, PC Magazine
Review
"This book is a tremendous achievement. You owe it to yourself to have a copy on your shelf. The chapter on iostreams is the most comprehensive and understandable treatment of that subject I've seen to date." Al Stevens Contributing Editor, Doctor Dobbs Journal
"Eckel's book is the only one to so clearly explain how to rethink program construction for object orientation. That the book is also an excellent tutorial on the ins and outs of C++ is an added bonus." Andrew Binstock, Editor, Unix Review
"Bruce continues to amaze me with his insight into C++, and Thinking in C++ is his best collection of ideas yet. If you want clear answers to difficult questions about C++, buy this outstanding book." Gary Entsminger Author, The Tao of Objects
"Thinking in C++ patiently and methodically explores the issues of when and how to use inlines, references, operator overloading, inheritance and dynamic objects, as well as advanced topics such as the proper use of templates, exceptions and multiple inheritance. The entire effort is woven in a fabric that includes Eckel's own philosophy of object and program design. A must for every C++ developer's bookshelf, Thinking in C++ is the one C++ book you must have if you're doing serious development with C++." Richard Male Shaw Contributing Editor, PC Magazine
Synopsis
Use the full power of C++ - First Edition Winner 1996 Jolt Award for Best Book of the Year.
- Learn practical programming and best practices.
- Meet the difficult challenges of C++ development.
- Build reliable and robust programs.
- Design Patterns chapter shows sophisticated use of objects, composition and polymorphism.
- Provides a gentle introduction to multithreaded programming, a feature being considered for the next version of Standard C++.
- Defensive Programming chapter includes a simple unit-testing framework and debugging techniques.
- In-depth treatment of Standard C++ Library facilities including strings, iostreams, and the "STL" algorithms and containers.
- Modern usage of templates, including template metaprogramming.
- Unravels the perplexities of multiple inheritance.
- Shows practical uses for RTTI.
- Explores exception handling in depth and clearly explains exception-safe design.
- Compliant with the official ISO C++ Standard.
- Presents results of current research being considered for inclusion in the next revision of Standard C++.
- All code examples freely downloadable, tested on multiple platforms and compilers including the free GNU C++ compiler on Windows/Mac/Linux.
On www.BruceEckel.com: - Annotated Solutions Guide
- Seminars and consulting
- Free DownloadVolume I of this book
Synopsis
The long awaited sequel to the highly successful Thinking in C++. More coverage of advanced topics professional developers must master.
- Emphasis on advanced testing techniques to produce optimized error free code.
- In depth coverage of STL with real world reusable code examples.
- Simple short exercises that simplify complex programming routines.
- Both authors are highly respected and widely known.
Synopsis
Thorough introduction to Standard C++
- Introduction and foundations of the Standard C++ Containers (a.k.a. the "STL") (full coverage in Volume 2)
- Gives you a solid background in the fundamentals of C++
- Takes you step by step through the features of the Language
- Illuminated by small, clear, direct examples
- Cross platform, tested on multiple compilers including the free GNU C++ compiler
- Annotated solutions guide available separately at www.BruceEckel.com
- Bonus: Includes the entire "Thinking in C: Foundations for Java & C++" multimedia Seminar-on-CD-ROM to prepare you for this book. CD also contains full HTML version of this book, and complete source code
Synopsis
Thorough introduction to Standard C++ Introduction and foundations of the Standard C++ Containers (a.k.a. the "STL") (full coverage in Volume 2) Gives you a solid background in the fundamentals of C++ Takes you step by step through the features of the Language Illuminated by small, clear, direct examples Cross platform, tested on multiple compilers including the free GNU C++ compiler Annotated solutions guide available separately at www.BruceEckel.com Bonus: Includes the entire "Thinking in C: Foundations for Java & C++" multimedia Seminar-on-CD-ROM to prepare you for this book. CD also contains full HTML version of this book, and complete source code Description
System requirements: PC or Macintosh computer with sound card and browser.
About the Author
Bruce Eckel is the author of
Thinking in C++, Volume I, and other books on C++. He served on the C++ Standards Committee, has published over 150 articles (many on C++) and has given C++ seminars worldwide. He is the president of
MindView, Inc., which provides software consulting and training.
Chuck Allison is former Senior Editor of the C/C++ Users Journal and author of the book C/C++ Code Capsules. He served on the C++ Standards Committee and is a professor of Computer Science at Utah Valley State College. He is president of Fresh Sources, Inc., which specializes in software training and mentoring.
Table of Contents
Preface.
I. BUILDING STABLE SYSTEMS. 1. Exception Handling.
2. Defensive Programming.
3. Debugging Techniques.
II. THE STANDARD C++ LIBRARY. 4. Strings in Depth.
5. Iostreams.
6. Templates in Depth.
7. STL Containers and Iterators.
8. STL Algorithms.
III. ADVANCED TOPICS. 9. Run-time Type Identification.
10. Multiple Inheritance.
11. Design Patterns.
Appendix A: Recommended Reading.
Appendix B: Etc.
Index.