ASCII chart Compiler support
Language
Basic concepts C++ keywords Preprocessor Expressions Declaration Initialization Functions Statements Classes Templates Exceptions
Headers
Library concepts
Dynamic memory management
allocator
unique_ptr shared_ptr weak_ptr owner_less enable_shared_from_this default_delete allocator_traits pointer_safety scoped_allocator_adaptor
polymorphic_allocator memory_resource pool_options synchronized_pool_resource unsynchronized_pool_resource monotonic_buffer_resource
Error handling
exception exception_ptr (C++11) nested_exception (C++11) logic_error invalid_argument domain_error length_error out_of_range runtime_error range_error overflow_error underflow_error error_category (C++11) error_condition (C++11) errc (C++11) error_code (C++11) system_error (C++11)
Function objects
function (C++11) default_searcher (C++17) boyer_moore_searcher (C++17) boyer_moore_horspool_searcher (C++17) reference_wrapper (C++11) plus – minus multiplies – divides modulus negate equal_to – not_equal_to greater – greater_equal less – less_equal logical_and logical_or logical_not bit_and bit_or bit_xor bit_not (C++14)
Type support
Fixed width integer types (C++11) byte (C++17) numeric_limits type_info type_index (C++11) integral_constant (C++11) endian (C++20)
Containers library
span (C++20) array (C++11) vector − vector<bool> deque list − forward_list (C++11) set − multiset map − multimap unordered_set (C++11) unordered_multiset (C++11) unordered_map (C++11) unordered_multimap (C++11) stack − queue − priority_queue
Iterators library
iterator_traits reverse_iterator move_iterator (C++11) back_insert_iterator front_insert_iterator insert_iterator istream_iterator ostream_iterator istreambuf_iterator ostreambuf_iterator
Input/output library
basic_streambuf basic_filebuf basic_stringbuf basic_syncbuf (C++20) ios_base basic_ios basic_istream basic_ostream basic_osyncstream (C++20) basic_iostream basic_ifstream basic_ofstream basic_fstream basic_istringstream basic_ostringstream basic_stringstream io_errc I/O manipulators C-style I/O
Numerics library
Common mathematical functions Special mathematical functions (C++17) Pseudo-random number generation Compile-time rational arithmetic (C++11) complex valarray
Utilities library
Program utilities Moving functions Type operations Relational comparators (C++20) String conversions (C++17) hash (C++11) bitset initializer_list (C++11) pair − tuple (C++11) integer_sequence (C++14) optional (C++17) − any (C++17) variant (C++17)
Date and time (C++11)
duration time_point system_clock − steady_clock high_resolution_clock
utc_clock − tai_clock gps_clock − file_clock local_t clock_time_conversion time_of_day tzdb − tzdb_list sys_info − local_info time_zone zoned_traits zoned_time leap link nonexistent_local_time ambiguous_local_time
Strings library
char_traits basic_string basic_string_view (C++17) Null-terminated byte strings Null-terminated multibyte strings Null-terminated wide strings
Regular expressions library (C++11)
basic_regex sub_match match_results regex_iterator regex_token_iterator regex_error regex_traits
Localizations library
locale codecvt_base codecvt_byname codecvt codecvt_byname messages_base messages messages_byname ctype_base ctype – ctype_char time_base time_get – time_put time_get_byname – time_put_byname money_base money_get – money_put moneypunct moneypunct_byname num_get – num_put numpunct numpunct_byname collate collate_byname
Thread support library (C++11)
thread mutex timed_mutex recursive_mutex recursive_timed_mutex shared_mutex (C++17) shared_timed_mutex (C++14) lock_guard scoped_lock (C++17) unique_lock shared_lock (C++14) once_flag condition_variable condition_variable_any promise packaged_task future shared_future async launch future_status future_error future_category future_errc
Atomic operations library (C++11)
atomic atomic_flag memory_order
Filesystem library (C++17)
path filesystem_error directory_entry directory_iterator recursive_directory_iterator file_status space_info file_type perms perm_options copy_options directory_options file_time_type
Algorithms library
sequenced_policy parallel_policy parallel_unsequenced_policy seq – par – par_unseq
all_of() (C++11) – any_of() (C++11) – none_of() (C++11) for_each() – for_each_n() (C++17) count() – count_if() mismatch() find() – find_if() – find_if_not() (C++11) find_end() find_first_of() adjacent_find() search() – search_n()
copy() – copy_n() (C++11) – copy_backward() copy_if() (C++11) move() (C++11) – move_backward() (C++11) fill() – fill_n() transform() generate() – generate_n() remove() – remove_if() remove_copy() – remove_copy_if() replace() – replace_if() replace_copy() – replace_copy_if() swap() – iter_swap() swap_ranges() reverse() – reverse_copy() rotate() – rotate_copy() random_shuffle() (until C++17) – shuffle() (C++11) sample() (C++17) unique() – unique_copy()
is_partitioned() (C++11) partition() – partition_copy() (C++11) stable_partition() partition_point() (C++11)
is_sorted() (C++11) – is_sorted_until() (C++11) sort() – stable_sort() partial_sort() – partial_sort_copy() nth_element()
lower_bound() – upper_bound() binary_search() equal_range()
merge() – inplace_merge() includes() set_difference() set_intersection() set_symmetric_difference() set_union()
is_heap() (C++11) – is_heap_until() (C++11) make_heap() – sort_heap() push_heap() – pop_heap()
max() – max_element() min() – min_element() minmax() (C++11) – minmax_element() (C++11) clamp() (C++17)
equal() lexicographical_compare() compare_3way() (C++20) lexicographical_compare_3way() (C++20)
is_permutation() (C++11) next_permutation() prev_permutation()
iota() (C++11) accumulate() inner_product() adjacent_difference() partial_sum() reduce() (C++17) exclusive_scan() (C++17) inclusive_scan() (C++17) transform_reduce() (C++17) transform_exclusive_scan() (C++17) transform_inclusive_scan() (C++17)
Standard library extensions (library fundamentals TS) Standard library extensions v2 (library fundamentals TS v2)
propagate_const — not_fn — observer_ptr source_location — ostream_joiner detection idiom — uniform container erasure
Parallelism library extensions (parallelism TS) Concurrency library extensions (concurrency TS) Concepts (concepts TS) Ranges (ranges TS) Transactional Memory (TM TS) Feature Test Recommendations