This is a popular free C++ book by Bruce Eckel. 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.
Book Description
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.
Table of Contents
- Introduction to objects
- Inheritance
- Composition
- Polymorphism
- Exception handling
- Analysis and design fundamentals
- Advantages of C++
- Transitioning from C
- Compiling and building programs
- Writing C++ functions
- Flow control
- C++ operators
- Data types
- Casting
- Debugging tips
- Pointers to functions
- Designing reusable C++ classes
- Conditional compilation and header files
- Access specifiers
- Constructors and destructors
- Function overloading and default arguments
- Using const and static effectively
- Inlining
- Namespaces
- References
- Copy constructors
- Operator overloading
- Using new and delete for dynamic objects
- Virtual functions
- Abstract classes
- Introduction to templates and iterators