| <algorithm> | <forward_list> | <meta> | <stack> | 
| <any> | <fstream> | <mutex> | <stacktrace> | 
| <array> | <functional> | <new> | <stdexcept> | 
| <atomic> | <future> | <numbers> | <stdfloat> | 
| <barrier> | <generator> | <numeric> | <stop_token> | 
| <bit> | <hazard_pointer> | <optional> | <streambuf> | 
| <bitset> | <hive> | <ostream> | <string> | 
| <charconv> | <initializer_list> | <print> | <string_view> | 
| <chrono> | <inplace_vector> | <queue> | <syncstream> | 
| <compare> | <iomanip> | <random> | <system_error> | 
| <complex> | <ios> | <ranges> | <text_encoding> | 
| <concepts> | <iosfwd> | <ratio> | <thread> | 
| <condition_variable> | <iostream> | <rcu> | <tuple> | 
| <contracts> | <istream> | <regex> | <type_traits> | 
| <coroutine> | <iterator> | <scoped_allocator> | <typeindex> | 
| <debugging> | <latch> | <semaphore> | <typeinfo> | 
| <deque> | <limits> | <set> | <unordered_map> | 
| <exception> | <linalg> | <shared_mutex> | <unordered_set> | 
| <execution> | <list> | <simd> | <utility> | 
| <expected> | <locale> | <source_location> | <valarray> | 
| <filesystem> | <map> | <span> | <variant> | 
| <flat_map> | <mdspan> | <spanstream> | <vector> | 
| <flat_set> | <memory> | <sstream> | <version> | 
| <format> | <memory_resource> | 
| <cassert> | <cfenv> | <climits> | <csetjmp> | <cstddef> | <cstdlib> | <cuchar> | 
| <cctype> | <cfloat> | <clocale> | <csignal> | <cstdint> | <cstring> | <cwchar> | 
| <cerrno> | <cinttypes> | <cmath> | <cstdarg> | <cstdio> | <ctime> | <cwctype> | 
| abort_handler_s | mbstowcs_s | strncat_s | vswscanf_s | 
| asctime_s | memcpy_s | strncpy_s | vwprintf_s | 
| bsearch_s | memmove_s | strtok_s | vwscanf_s | 
| constraint_handler_t | memset_s | swprintf_s | wcrtomb_s | 
| ctime_s | printf_s | swscanf_s | wcscat_s | 
| errno_t | qsort_s | tmpfile_s | wcscpy_s | 
| fopen_s | RSIZE_MAX | TMP_MAX_S | wcsncat_s | 
| fprintf_s | rsize_t | tmpnam_s | wcsncpy_s | 
| freopen_s | scanf_s | vfprintf_s | wcsnlen_s | 
| fscanf_s | set_constraint_handler_s | vfscanf_s | wcsrtombs_s | 
| fwprintf_s | snprintf_s | vfwprintf_s | wcstok_s | 
| fwscanf_s | snwprintf_s | vfwscanf_s | wcstombs_s | 
| getenv_s | sprintf_s | vprintf_s | wctomb_s | 
| gets_s | sscanf_s | vscanf_s | wmemcpy_s | 
| gmtime_s | strcat_s | vsnprintf_s | wmemmove_s | 
| ignore_handler_s | strcpy_s | vsnwprintf_s | wprintf_s | 
| localtime_s | strerrorlen_s | vsprintf_s | wscanf_s | 
| L_tmpnam_s | strerror_s | vsscanf_s | |
| mbsrtowcs_s | strlen_s | vswprintf_s | 
| Subclause | Header | |
| Common definitions | <cstddef> | |
| C standard library | <cstdlib> | |
| Implementation properties | <cfloat>, <climits>, <limits>, | |
| <version> | ||
| Integer types | <cstdint> | |
| Dynamic memory management | <new> | |
| Type identification | <typeinfo> | |
| Source location | <source_location> | |
| Exception handling | <exception> | |
| Initializer lists | <initializer_list> | |
| Comparisons | <compare> | |
| Contract-violation handling | <contracts> | |
| Coroutines support | <coroutine> | |
| Other runtime support | <cstdarg> | |
| Concepts library | <concepts> | |
| Error numbers | <cerrno> | |
| System error support | <system_error> | |
| Debugging | <debugging> | |
| Memory | <memory> | |
| Type traits | <type_traits> | |
| Compile-time rational arithmetic | <ratio> | |
| Utility components | <utility> | |
| Tuples | <tuple> | |
| Optional objects | <optional> | |
| Variants | <variant> | |
| Expected objects | <expected> | |
| Function objects | <functional> | |
| Bit manipulation | <bit> | |
| C-compatible bit manipulation | <stdbit.h> | |
| Class template array | <array> | |
| Class template inplace_vector | <inplace_vector> | |
| Contiguous access | <span> | |
| Multidimensional access | <mdspan> | |
| Iterators library | <iterator> | |
| Ranges library | <ranges> | |
| Algorithms library | <algorithm>, <numeric> | |
| Execution policies | <execution> | |
| String view classes | <string_view> | |
| String classes | <string> | |
| Null-terminated sequence utilities | <cstring>, <cwchar> | |
| Primitive numeric conversions | <charconv> | |
| Random number generation | <random> | |
| Mathematical functions for floating-point types | <cmath> | |
| Atomics | <atomic> | |
| Expression | Return type | Requirement | 
| a == b | decltype(a == b) models boolean-testable | 
| Expression | Return type | Requirement | 
| a < b | decltype(a < b) models boolean-testable | < is a strict weak ordering relation ([alg.sorting]) | 
| Expression | Post-condition | 
| T u = rv; | u is equivalent to the value of rv before the construction | 
| T(rv) | T(rv) is equivalent to the value of rv before the construction | 
| Expression | Post-condition | 
| T u = v; | the value of v is unchanged and is equivalent to  u | 
| T(v) | the value of v is unchanged and is equivalent to T(v) | 
| Expression | Return type | Return value | Post-condition | 
| t = rv | T& | t | If t and rv do not refer to the same object,
  t is equivalent to the value of rv before the assignment | 
| Expression | Return type | Return value | Post-condition | 
| t = v | T& | t | t is equivalent to v, the value of v is unchanged | 
| Expression | Post-condition | 
| u.~T() | All resources owned by u are reclaimed, no exception is propagated. | 
| [Note 3:  Array types and non-object types are not Cpp17Destructible.β end note] | |
| Expression | Return type | Operational semantics | 
| P u(np); | Postconditions: u == nullptr | |
| P u = np; | ||
| P(np) | Postconditions: P(np) == nullptr | |
| t = np | P& | Postconditions: t == nullptr | 
| a != b | decltype(a != b) models boolean-testable | !(a == b) | 
| a == np | a == P() | |
| np == a | ||
| a != np | !(a == np) | |
| np != a | 
| Expression | Return type | Requirement | 
| h(k) | size_t | |
| h(u) | size_t | Shall not modify u. | 
typename X::pointer
typename X::const_pointer
typename X::void_pointer
typename Y::void_pointer
typename X::const_void_pointer
typename Y::const_void_pointer
typename X::value_type
typename X::size_type
typename X::difference_type
typename X::rebind<U>::other
*p
*q
p->m
q->m
static_cast<XX::pointer>(w)
static_cast<XX::const_pointer>(x)
pointer_traits<XX::pointer>::pointer_to(r)
a.allocate(n)
a.allocate(n, y)
a.allocate_at_least(n)
a.deallocate(p, n)
a.max_size()
a1 == a2
a1 != a2
a == b
a != b
X u(a);
X u = a;
X u(b);
X u(std::move(a));
X u = std::move(a);
X u(std::move(b));
a.construct(c, args...)
a.destroy(c)
a.select_on_container_copy_construction()
typename X::propagate_on_container_copy_assignment
typename X::propagate_on_container_move_assignment
typename X::propagate_on_container_swap
typename X::is_always_equal