C++ Reference

Standard library, language features, and utilities for C++11 through C++26.

C++ spans both a language and a standard library ecosystem. This page is the top-level map of the reference: use it to choose the language rules, library facilities, a specific standard version, or a specialized index. Deeper curated hubs such as Ranges and Algorithms are linked as destinations, not redefined here.

# Start Here

Language rules and syntax

Declarations, types, expressions, classes, templates, object lifetime, and the rules the compiler enforces.

Standard library overview

Containers, algorithms, numerics, text, concurrency, memory, utilities, and the header/module entry points for the library.

Choose by header

Use the curated header hub when you know the include shape you want but need the right family, version, or compatibility path.

Navigate by standard version

Jump straight to C++11 through C++26 when your codebase or toolchain is anchored to a specific standard revision.

# Language Vs. Library

AreaWhat it answersStart withTypical topics
Core languageHow the language itself works: syntax, typing, overload resolution, templates, expressions, storage, object model.LanguageTypes, Functions, Templates, RAII
Standard libraryWhich reusable facilities exist and which headers/modules expose them.Standard libraryContainers, Algorithms, Strings, Concurrency
Preprocessor and tokensSource transformation before compilation and keyword/token-level reference material.Preprocessor, Keywords#include, conditional compilation, constexpr
Portability and support statusWhether a feature exists in a given compiler or standard library and which feature-test macro represents it.Compiler support, Feature test macros, FreestandingAvailability tables, macros, hosted vs. freestanding, implementation gaps.

# Standard Versions

StandardWhy you would start thereFlagship changes
C++11The modern baseline for move semantics, lambdas, smart pointers, atomics, and the first big library expansion.lambdas, move, thread support, <type_traits>
C++14Incremental cleanup when you need the post-C++11 fixes and smaller quality-of-life language improvements.Generic lambdas, return type deduction, variable templates, shared locking support.
C++17Widely deployed production target for filesystem, structured bindings, `if constexpr`, and vocabulary types.filesystem, optional, variant, <string_view>
C++20Feature-heavy modern target for concepts, ranges, coroutines, formatting, and newer concurrency primitives.concepts, ranges, coroutines, <format>
C++23Current language/library refinement wave with expected, print, mdspan, stacktrace, and more library ergonomics.expected, <print>, <mdspan>, <stacktrace>
C++26Forward-looking draft-facing landing for the newest library surfaces and post-C++23 standardization work.<debugging>, <inplace_vector>, <linalg>, <simd>

# Specialized Indexes And Reference Aids

If you already know the shape of what you needGo here
You know the exact include name or want to browse by header family.Curated headers hub or all headers
You want an alphabetic or symbol-driven lookup.Symbol index, keyword index, keywords overview
You need named requirements, compatibility notes, or miscellaneous cross-reference material.Named requirements, Meta, Legacy links
You are tracking implementation support or feature macros.Compiler support, Feature test macros, Current status
You need experimental or TS-oriented material outside the standard core/library baseline.Experimental