📖 Overview
C++ Common Knowledge presents core principles and practices for professional C++ programming through a collection of focused items and examples. Each item addresses a specific aspect of C++ development, from basic syntax to advanced language features.
The book organizes its technical content into self-contained sections that build upon each other while remaining independently accessible. Sutter examines common pitfalls, design patterns, and implementation techniques that impact C++ code quality and performance.
Topics covered include memory management, templates, inheritance, exception handling, and C++ idioms that promote robust programming practices. Code samples demonstrate practical applications of the concepts while avoiding overly abstract examples.
The material reflects deeper themes about software engineering discipline and the relationship between language features and program architecture. Sutter's approach emphasizes understanding the "why" behind C++ conventions rather than just memorizing rules.
👀 Reviews
There are not enough internet reviews to create a summary of this book. Instead, here is a summary of reviews of Herb Sutter's overall work:
Readers consistently rate Sutter's "Exceptional C++" series between 4.2-4.5/5 stars across platforms, with particular focus on his precise technical explanations and practical problem-solving approach.
What readers liked:
- Clear explanations of complex C++ concepts
- Practical examples and gotchas from real-world code
- Question/answer format that builds understanding
- Deep coverage of memory management and exception safety
"His explanations helped me understand RAII and exception safety better than any other resource" - Amazon reviewer
"The puzzles and solutions format makes difficult concepts stick" - Goodreads review
What readers disliked:
- Some examples feel dated (pre-C++11)
- Advanced material can be overwhelming for beginners
- Code examples occasionally too abstract
- Price point higher than similar books
Amazon: 4.5/5 (328 reviews)
Goodreads: 4.2/5 (892 reviews)
Software engineering forums and blogs frequently reference his books when discussing C++ best practices and design patterns.
"Still relevant but showing its age" is a common thread in recent reviews.
📚 Similar books
Effective C++ by Scott Meyers
This book explains practical C++ programming techniques and pitfalls through specific, concrete examples and guidelines.
C++ Coding Standards by Andrei Alexandrescu The book presents 101 rules for writing clean, maintainable C++ code with explanations of the underlying principles.
Modern C++ Design by Andrei Alexandrescu This book explores advanced C++ template programming and design patterns through implementation techniques.
Exceptional C++ by Herb Sutter The book presents solutions to complex C++ programming problems through puzzles and their detailed solutions.
C++ Templates: The Complete Guide by David Vandevoorde, Nicolai M. Josuttis This book covers template programming from basic concepts to advanced metaprogramming techniques with practical examples.
C++ Coding Standards by Andrei Alexandrescu The book presents 101 rules for writing clean, maintainable C++ code with explanations of the underlying principles.
Modern C++ Design by Andrei Alexandrescu This book explores advanced C++ template programming and design patterns through implementation techniques.
Exceptional C++ by Herb Sutter The book presents solutions to complex C++ programming problems through puzzles and their detailed solutions.
C++ Templates: The Complete Guide by David Vandevoorde, Nicolai M. Josuttis This book covers template programming from basic concepts to advanced metaprogramming techniques with practical examples.
🤔 Interesting facts
🔸 Herb Sutter is the chair of the ISO C++ standards committee and has been nicknamed "Mr. C++" within the programming community for his extensive contributions to the language.
🔸 The book is structured as 78 "items" of essential C++ knowledge, making it easy for readers to digest complex concepts in small, focused chunks.
🔸 Many of the guidelines in the book influenced the development of the official C++ Core Guidelines, which Sutter later co-authored with Bjarne Stroustrup (C++'s creator).
🔸 The book addresses the "gotchas" and corner cases of C++ that often trip up even experienced programmers, earning it a reputation as a valuable resource for both intermediate and advanced developers.
🔸 Several concepts covered in the book, particularly regarding exception safety and resource management, helped shape modern C++ best practices and influenced features in subsequent C++ standards.