The C++ Core Guidelines, developed by a team led by C++ creator Bjarne Stroustrup, provide consistent best practices for writing modern code with C++17, C++14, and C++11. Now, C++ expert instructor Rainer Grimm offers accessible, practical coverage of the Core Guidelines that offer the most value to working C++ developers. Offering new insights, indispensable context, and proven C++17 examples drawn from his courses and seminars, Grimm helps you get more value from the guidelines, whether you’re writing new programs or incrementally improving legacy code.
Grimm’s wide-ranging coverage addresses C++ programming philosophy, interfaces, functions, classes, class hierarchies, enumerations, resource management, expressions, statements, performance, concurrency, error handling, constants, immutability, templates, generic programming, C-style programming, source files, the Standard Library, and more. Each section links to the original standard online, and wherever appropriate, Grimm previews advances from C++20 and C++23. With Grimm’s help, you can use the C++ Core Guidelines to write C++ code that’s more consistent, robust, and well-performing -- and easier to maintain and enhance for years to come.
Rainer Grimm works as a software architect, team lead and instructor since 1999. In 2002, he created a further education round at his company. Rainer Grimm gives seminars since 2002. His first seminars were about proprietary management software, but seminars for Python and C++ followed immediately. In his spare time, he likes to write articles about C++, Python, and Haskell. Rainer Grimm also likes to speak at conferences. He publishes weekly on his English Modernes Cpp [https://www.modernescpp.com/] and the German blog [https://www.grimm jaud.de/index.php/blog]. Heise Developer [https://www.heise.de/developer/] hosts the German blog. Since 2016 he is an independent instructor giving seminars about modern C++ and Python. He published several books in various languages to modern C++ and concurrency, in particular. Due to his profession, Rainer Grimm always searches for the best way to teach modern C++.
1. Introduction
2. Philosophy
3. Interfaces
4. Functions
5. Classes and Class Hierarchies
6. Enumerations
7. Resource Management
8. Expressions and Statements
9. Performance
10. Concurrency
11. Error Handling
12. Constants and Immutability
13. Templates and Generic Programming
14. C-Style Programming
15. Source Files
16. The Standard Library