C++ reference C++98, C++03, C++11, C++14, C++17, C++20
Compiler support (11, 14, 17, 20) Freestanding implementations
Language
Basic concepts Keywords Preprocessor Expressions Declaration Initialization Functions Statements Classes Templates Exceptions
Headers
Named requirements
Feature test macros (C++20)
Language support library
Type support − traits (C++11) Program utilities Relational comparators (C++20) numeric_limits − type_info initializer_list (C++11)
Concepts library (C++20)
Diagnostics library
General utilities library
Smart pointers and allocators Date and time Function objects − hash (C++11) String conversions (C++17) Utility functions pair − tuple (C++11) optional (C++17) − any (C++17) variant (C++17) − format (C++20)
Strings library
basic_string basic_string_view (C++17) Null-terminated strings: byte − multibyte − wide
Containers library
array (C++11) − vector map − unordered_map (C++11) priority_queue − span (C++20) Other containers: sequence − associative unordered associative − adaptors
Iterators library
Ranges library (C++20)
Algorithms library
Numerics library
Common math functions Mathematical special functions (C++17) Numeric algorithms Pseudo-random number generation Floating-point environment (C++11) complex − valarray
Localizations library
Input/output library
Stream-based I/O Synchronized output (C++20) I/O manipulators
Filesystem library (C++17)
Regular expressions library (C++11)
basic_regex − algorithms
Atomic operations library (C++11)
atomic − atomic_flag atomic_ref (C++20)
Thread support library (C++11)
Standard library extensions (library fundamentals TS)
resource_adaptor — invocation_type
Standard library extensions v2 (library fundamentals TS v2)
propagate_const — ostream_joiner — randint observer_ptr — detection idiom
Standard library extensions v3 (library fundamentals TS v3)
scope_exit — scope_fail — scope_success — unique_resource
Concurrency library extensions (concurrency TS) Concepts (concepts TS) Ranges (ranges TS) Transactional Memory (TM TS)
C reference C89, C95, C99, C11, C17
Basic concepts Keywords Preprocessor Expressions Declaration Initialization Functions Statements
Type support
Program utilities
Variadic functions
Error handling
Dynamic memory management
Date and time utilities
Null-terminated strings: byte − multibyte − wide
Algorithms
Numerics
Common mathematical functions Floating-point environment (C99) Pseudo-random number generation Complex number arithmetic (C99) Type-generic math (C99)
Input/output support
Localization support
Atomic operations library (C11)
Thread support library (C11)
Dynamic memory extensions (dynamic memory TR) Floating-point extensions, Part 1 (FP Ext 1 TS) Floating-point extensions, Part 4 (FP Ext 4 TS)