Get up to speed on the latest features and tools in the C++ language. As the classic language continues to evolve atop its complex history, this book helps C++ developers confidently navigate new standards and effectively adopt modern best practices from C++20, C++23 and C++26.
You will first explore foundational concepts like and utilities, such as std::variant and std::expected, before diving into paradigms such as modules, concepts, functional programming with std::ranges, contracts and coroutines. Each topic will be accompanied by an example project to ensure hands-on learning. The book also explores specialized topics like tensor manipulation with std::mdspan, pipelines, concurrency, C++ code safety and correctness, and new language features like std::print. Finally, you will review a detailed case study on building a FORTH compiler-interpreter, showcasing the integration of all these modern C++ techniques in a real-world embedded system that also features a cooperative OS based on C++ coroutines. In the book, you will also find many references to literature and interesting websites, as well as fascinating facts from the history of computing.
This book stands out for its in-depth presentation of material, with numerous color code snippets, drawings, tables and non-trivial, real-world examples. These strengths, combined with the author’s extensive C++ expertise, create a valuable guide for programmers and C++ enthusiasts eager to explore modern capabilities of C++.
You Will:
Get up to speed on the latest features and tools in the C++ language. As the classic language continues to evolve atop its complex history, this book helps experienced C++ developers confidently navigate new standards and effectively adopt modern best practices from C++20, C++23 and C++26.
You will first explore foundational concepts like modules and utilities before diving into paradigms such as concepts, functional programming with std::ranges, and coroutines. Each topic will be accompanied by an example project to ensure hands-on learning.The book also explores specialized topics like tensor manipulation with std::mdspan, concurrency tools (e.g., atomic operations, barriers), and new language features like std::format. Finally, you will review a detailed case study on building a FORTH compiler-interpreter, showcasing the integration of all these modern C++ techniques in a real-world application.
This book stands out for its in-depth presentation of material, with numerous drawings, tables and non-trivial, real-world examples. These strengths, combined with the author’s extensive C++ expertise, create a valuable guide for programmers and C++ enthusiasts eager to explore modern capabilities of C++.
What You Will Learn:
Who This Book is for:
Experienced C++ developers who are familiar with the standard library. Readers should be comfortable with C++ but maybe haven’t had time to dive in and understand modern and advanced features of the modern versions.
Bogusław Cyganek
Modules Concepts Coroutines Ranges Concurrent programming System programming Modern C++ C++20 C++23 C++26