Repolode
changkun

changkun/modern-cpp-tutorial

A free, open-source book and website that walks through modern C++ features from C++11 through C++26, organized by topic.

Stars
25,917
Forks
3,115
Open issues
0
Last commit
17 days ago

What is it?

This is a tutorial on modern C++ covering language and library features added from C++11 through C++26. Each chapter introduces a feature together with the historical motivation behind it, so readers understand why it was added, not only how to write it. Chapters are self-contained, so readers can jump to the features they need.

The material is available as an online book on GitHub, a PDF, an EPUB, and a website that also works on mobile browsers. Each chapter comes with example code organized by chapter number, and chapter-end exercises with answers are provided.

The book targets readers who already know traditional C++ (C++98 or earlier) and want a quick, practical overview of newer features. It is written in Chinese first, with an English edition, and the code is released under the MIT license while the text is under a Creative Commons license.

Key features

  • 01Covers features from C++11 through C++26, organized by topic.
  • 02Explains the historical background of each feature.
  • 03Includes example code and chapter exercises with answers.
  • 04Available as online reading, PDF, EPUB, and a website.
  • 05Provides English and Simplified Chinese editions.

Use cases

  • Learning modern C++ quickly after working with C++98-style code.
  • Looking up when and why a specific C++11 to C++26 feature was introduced.
  • Migrating an existing codebase to modern C++ feature by feature.
  • Reviewing modern C++ concepts with the exercises at the end of each chapter.

Quick start

  1. 1

    Read the book online on GitHub (table of contents)

  2. 2

    Install Docker, following the README link

  3. 3

    Build everything locally with Docker

    make build

Things to know

  • The book's text is licensed CC BY-NC-ND 4.0, so commercial use and derivative works are not permitted.
  • Local building is recommended through Docker, so you need Docker installed to build it yourself.

Topics

FAQ

What is modern-cpp-tutorial?
A free, open-source book and website that walks through modern C++ features from C++11 through C++26, organized by topic. This is a tutorial on modern C++ covering language and library features added from C++11 through C++26. Each chapter introduces a feature together with the historical motivation behind it, so readers understand why it was added, not only how to write it. Chapters are self-contained, so readers can jump to the features they need.
Is modern-cpp-tutorial free to use? What license does it have?
modern-cpp-tutorial is open source under the MIT license. Check the license terms before using it in commercial products.
Is modern-cpp-tutorial still maintained?
Actively maintained. The last commit to modern-cpp-tutorial was on Oct 8, 2026.
What can I use modern-cpp-tutorial for?
Learning modern C++ quickly after working with C++98-style code. Looking up when and why a specific C++11 to C++26 feature was introduced. Migrating an existing codebase to modern C++ feature by feature. Reviewing modern C++ concepts with the exercises at the end of each chapter.
How do I install modern-cpp-tutorial?
Read the book online on GitHub (table of contents) Install Docker, following the README link Build everything locally with Docker: make build
Where can I get modern-cpp-tutorial?
The source code and installation instructions are on GitHub: https://github.com/changkun/modern-cpp-tutorial

Summary generated by AI from the project's README. GitHub stats refresh daily.

Related projects