# C++ reference

From cppreference.com

C++11, C++14, C++17, C++20, C++23, C++26 │ Compiler support C++11, C++14, C++17, C++20, C++23, C++26
Freestanding implementations ASCII chart Language Basic concepts Keywords Preprocessor Expressions Declarations Initialization Functions Statements Classes Overloading Templates Exceptions Standard library (headers) Named requirements Feature test macros (C++20) Language support library `source_location` (C++20) Type support Program utilities Coroutine support (C++20) Three-way comparison (C++20) `numeric_limits` − `type_info` `initializer_list` (C++11) Concepts library (C++20) Diagnostics library `exception` − System error `basic_stacktrace` (C++23) Memory management library `unique_ptr` (C++11) `shared_ptr` (C++11) Low level management | Metaprogramming library (C++11) Type traits − `ratio` `integer_sequence` (C++14) General utilities library Function objects − `hash` (C++11) Swap − Type operations (C++11) Integer comparison (C++20) `pair` − `tuple` (C++11) `optional` (C++17) `expected` (C++23) `variant` (C++17) − `any` (C++17) String conversions (C++17) Formatting (C++20) `bitset` − Bit manipulation (C++20) Strings library `basic_string` − `char_traits` `basic_string_view` (C++17) Null-terminated strings: byte − multibyte − wide Containers library `array` (C++11) `vector` − `deque` `list` − `forward_list` (C++11) `set` − `multiset` `map` − `multimap` `unordered_map` (C++11) `unordered_multimap` (C++11) `unordered_set` (C++11) `unordered_multiset` (C++11) `stack` − `queue` − `priority_queue` `flat_set` (C++23) `flat_multiset` (C++23) `flat_map` (C++23) `flat_multimap` (C++23) `span` (C++20) − `mdspan` (C++23) | Iterators library Ranges library (C++20) Algorithms library Execution policies (C++17) Constrained algorithms (C++20) Numerics library Common math functions Mathematical special functions (C++17) Mathematical constants (C++20) Numeric algorithms Pseudo-random number generation Floating-point environment (C++11) `complex` − `valarray` Date and time library Calendar (C++20) − Time zone (C++20) Localizations library `locale` − Character classification Input/output library Print functions (C++23) Stream-based I/O − I/O manipulators `basic_istream` − `basic_ostream` Synchronized output (C++20) Filesystem library (C++17) `path` Regular expressions library (C++11) `basic_regex` − algorithms Concurrency support library (C++11) `thread` − `jthread` (C++20) `atomic` − `atomic_flag` `atomic_ref` (C++20) `memory_order` − `condition_variable` Mutual exclusion − Semaphores (C++20) `future` − `promise` − `async` `latch` (C++20) − `barrier` (C++20)
Technical specifications 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` Parallelism library extensions v2 (parallelism TS v2) `simd` Concurrency library extensions (concurrency TS) − Transactional Memory (TM TS) Reflection (reflection TS)
External Links − Non-ANSI/ISO Libraries − Index − std Symbol Index

Retrieved from "https://en.cppreference.com/mwiki/index.php?title=cpp&oldid=97601"