This book will provide readers with details of C++ programs with regard to the C++17 and C++20 standards, and how they are compiled, linked, and executed. It will also cover how memory management works, what the best practices are as regards memory management problems, what classes are and how they are implemented, how a compiler optimizes code, and what the compiler's approach is in terms of supporting class inheritance, virtual functions, and templates.
The book will also tell readers how to apply memory management, object-oriented programming, concurrency, and design patterns to create world-ready production applications.
Readers will learn the inner details of efficient data structures and algorithms, and will understand how to measure and compare them to choose what fits best for a specific problem.
This book will help readers to incorporate system design skills with essential design patterns into C++ applications.
By way of a bonus, the book also provides an introduction into the AI world, including machine learning basics using the C++ programming language.
By the end of this book, readers should be confident enough to design and architect real-world, scalable C++ applications using efficient data structures and algorithms.