📖 Overview
C++ Coding Standards presents 101 rules and recommendations for writing effective C++ code. The book, co-authored by Herb Sutter and Andrei Alexandrescu, draws from their extensive experience in software development and C++ standardization.
Each rule is explained through examples, rationale, and practical implementation guidance. The standards cover key areas including resource management, exception safety, inheritance, interfaces, and performance optimization.
The book maintains a focus on industrial-strength development practices rather than academic theory. Code samples demonstrate both problematic patterns to avoid and recommended solutions to common challenges.
This work stands as a practical reference for teams seeking to establish consistent coding practices while highlighting the deeper principles of robust C++ software design. The authors' emphasis on explaining the "why" behind each standard helps developers internalize fundamental best practices.
👀 Reviews
Readers value this book as a collection of specific, actionable C++ guidelines rather than just theory. Many cite its clear explanations and practical focus on modern C++ practices.
Liked:
- Concise rules with rationale behind each recommendation
- Code examples showing both good and bad practices
- Focus on maintainable, sustainable code patterns
- Serves as quick reference for teams establishing coding standards
Disliked:
- Some content now dated (pre-C++11)
- Too basic for advanced developers
- Not comprehensive enough for complete coding standards
- Some readers wanted more in-depth explanations
One reader noted: "Perfect balance between brevity and detail - each item gives you just what you need to know."
Ratings:
Goodreads: 4.1/5 (369 ratings)
Amazon: 4.4/5 (81 ratings)
Safari Books Online: 4.5/5 (125 ratings)
Several reviewers mentioned using it to improve code review processes and establish team guidelines.
📚 Similar books
Effective C++ by Scott Meyers
This book presents specific programming practices for writing professional C++ code through a collection of guidelines and rationales.
Clean Code by Robert C. Martin The book establishes principles and patterns for writing maintainable code across programming languages with a focus on practical implementation.
Code Complete by Steve McConnell This comprehensive guide covers software construction techniques, from design practices to coding methods that reduce errors and improve maintainability.
Modern C++ Design by Andrei Alexandrescu The book explores advanced C++ programming techniques through generic programming and design patterns implementations.
The Practice of Programming by Brian W. Kernighan This work presents fundamental programming concepts and techniques that apply across languages, focusing on code organization, debugging, and optimization.
Clean Code by Robert C. Martin The book establishes principles and patterns for writing maintainable code across programming languages with a focus on practical implementation.
Code Complete by Steve McConnell This comprehensive guide covers software construction techniques, from design practices to coding methods that reduce errors and improve maintainability.
Modern C++ Design by Andrei Alexandrescu The book explores advanced C++ programming techniques through generic programming and design patterns implementations.
The Practice of Programming by Brian W. Kernighan This work presents fundamental programming concepts and techniques that apply across languages, focusing on code organization, debugging, and optimization.
🤔 Interesting facts
🔷 Author Herb Sutter served as the chair of the ISO C++ Standards Committee from 2002-2022, directly influencing the evolution of the C++ language.
🔷 The book, co-authored with Andrei Alexandrescu, contains exactly 101 coding guidelines, each with detailed rationales and practical examples.
🔷 Many of the standards discussed in the book were incorporated into modern static code analysis tools and compiler warnings, helping millions of developers write better C++ code.
🔷 The book's emphasis on RAII (Resource Acquisition Is Initialization) helped popularize this crucial C++ idiom, which is now considered a fundamental principle of modern C++ programming.
🔷 While published in 2004, many of the book's core principles remain relevant and influential in today's C++ development, particularly in areas of exception safety and resource management.