C++ Core Guidelines is an essential book for any C++ programmer looking to write code that is reliable, maintainable, and efficient. The book is co-authored by Bjarne Stroustrup, the creator of C++, and Herb Sutter, a prominent C++ expert.
The book provides a comprehensive set of guidelines for writing modern C++ code, covering everything from coding style to memory management. It aims to establish a set of best practices for C++ programming, based on the collective experience of the authors and the broader C++ community.
The guidelines presented in the book are not meant to be dogmatic rules, but rather a set of suggestions and recommendations that can help C++ programmers produce better code. They cover a wide range of topics, including resource management, concurrency, interfaces, and more.
The book is organized into four main sections. The first section covers the basics of C++ programming, including fundamental concepts such as value types, reference types, and class hierarchies. The second section focuses on resource management, covering topics such as memory allocation, deallocation, and ownership. The third section covers design and interfaces, providing guidelines for creating clear, consistent, and easy-to-use APIs. Finally, the fourth section covers concurrency and parallelism, providing guidelines for writing safe and efficient concurrent code.
Throughout the book, the authors provide numerous code examples and illustrations to help readers understand the guidelines and their rationale. They also provide a wealth of references to other C++ resources, including papers, books, and online forums.
Whether you are a novice or an experienced C++ programmer, C++ Core Guidelines is an invaluable resource for improving your coding skills. It provides a comprehensive set of guidelines for writing modern C++ code that is reliable, maintainable, and efficient. If you are serious about C++ programming, this book is a must-read.