Documentation

Modern C++ is a collection of deep, code-first documentation for the C++ language as it exists today — C++11 through C++23. Every page is built around complete, working programs. Samples marked with a Run in Compiler Explorer link open directly in Compiler Explorer with the right flags already set, so you can run and modify them in one click. Everything on this site compiles cleanly with -std=c++23 -Wall -Wextra.

Features are labeled with the standard that introduced them, like this: C++23. If a page covers a feature that changed across standards, each refinement is labeled where it appears.

Core language features

How to write today's C++ at the language level: type deduction, initialization, enumerations, iteration, conversions, namespaces, and the deduction machinery that removes boilerplate.

Numbers and strings

Working with data's two most common shapes: numeric types and their properties, text in all its encodings, randomness done right, user-defined literals, regular expressions, and the modern formatting stack.

Coming soon

Phases 1 and 2 cover core language features and working with numbers and strings. Future phases will go equally deep on the standard library containers and algorithms, ranges, general-purpose utilities, and threading and concurrency.

External references