/utility/pair")  
---  
[ tuple  ](/w/cpp/utility/tuple "cpp/utility/tuple") (C++11)  
[ optional  ](/w/cpp/utility/optional "cpp/utility/optional") (C++17)  
[ any  ](/w/cpp/utility/any "cpp/utility/any") (C++17)  
[ variant  ](/w/cpp/utility/variant "cpp/utility/variant") (C++17)  
  
|  [ tuple_size  ](/w/cpp/utility/tuple_size "cpp/utility/tuple size") (C++11)  
---  
[ tuple_element  ](/w/cpp/utility/tuple_element "cpp/utility/tuple element")
(C++11)  
[ apply  ](/w/cpp/utility/apply "cpp/utility/apply") (C++17)  
[ make_from_tuple  ](/w/cpp/utility/make_from_tuple "cpp/utility/make from
tuple") (C++17)  
[ expected  ](/w/cpp/utility/expected "cpp/utility/expected") (C++23)  
  
[ Elementary string conversions ](/w/cpp/utility#Elementary_string_conversions
"cpp/utility")  
|  [ to_chars  ](/w/cpp/utility/to_chars "cpp/utility/to chars") (C++17)  
---  
[ from_chars  ](/w/cpp/utility/from_chars "cpp/utility/from chars") (C++17)  
[ chars_format  ](/w/cpp/utility/chars_format "cpp/utility/chars format")
(C++17)  
  
|  [ to_chars_result  ](/w/cpp/utility/to_chars_result "cpp/utility/to chars
result") (C++17)  
---  
[ from_chars_result  ](/w/cpp/utility/from_chars_result "cpp/utility/from
chars result") (C++17)  
  
  
  
  
  
  
[ [edit]
](https://en.cppreference.com/mwiki/index.php?title=Template:cpp/utility/navbar_content&action=edit)

Each of following macros is defined if the header [ ` <version> `
](/w/cpp/header/version "cpp/header/version") or one of the corresponding
headers specified in the table is included.

Macro name  |  Value  |  Header   
---|---|---  
` __cpp_lib_adaptor_iterator_pair_constructor ` |  202106L  |  [ ` <stack> ` ](/w/cpp/header/stack "cpp/header/stack") [ ` <queue> ` ](/w/cpp/header/queue "cpp/header/queue")  
` __cpp_lib_addressof_constexpr ` |  201603L  |  [ ` <memory> ` ](/w/cpp/header/memory "cpp/header/memory")  
` __cpp_lib_algorithm_iterator_requirements ` |  202207L  |  [ ` <algorithm> ` ](/w/cpp/header/algorithm "cpp/header/algorithm") [ ` <numeric> ` ](/w/cpp/header/numeric "cpp/header/numeric") [ ` <memory> ` ](/w/cpp/header/memory "cpp/header/memory")  
` __cpp_lib_allocate_at_least ` |  202302L  |  [ ` <memory> ` ](/w/cpp/header/memory "cpp/header/memory")  
` __cpp_lib_allocator_traits_is_always_equal ` |  201411L  |  [ ` <memory> ` ](/w/cpp/header/memory "cpp/header/memory") [ ` <scoped_allocator> ` ](/w/cpp/header/scoped_allocator "cpp/header/scoped allocator") [ ` <string> ` ](/w/cpp/header/string "cpp/header/string") [ ` <deque> ` ](/w/cpp/header/deque "cpp/header/deque") [ ` <forward_list> ` ](/w/cpp/header/forward_list "cpp/header/forward list") [ ` <list> ` ](/w/cpp/header/list "cpp/header/list") [ ` <vector> ` ](/w/cpp/header/vector "cpp/header/vector") [ ` <map> ` ](/w/cpp/header/map "cpp/header/map") [ ` <set> ` ](/w/cpp/header/set "cpp/header/set") [ ` <unordered_map> ` ](/w/cpp/header/unordered_map "cpp/header/unordered map") [ ` <unordered_set> ` ](/w/cpp/header/unordered_set "cpp/header/unordered set")  
` __cpp_lib_any ` |  201606L  |  [ ` <any> ` ](/w/cpp/header/any "cpp/header/any")  
` __cpp_lib_apply ` |  201603L  |  [ ` <tuple> ` ](/w/cpp/header/tuple "cpp/header/tuple")  
` __cpp_lib_array_constexpr ` |  201811L  |  [ ` <iterator> ` ](/w/cpp/header/iterator "cpp/header/iterator") [ ` <array> ` ](/w/cpp/header/array "cpp/header/array")  
` __cpp_lib_as_const ` |  201510L  |  [ ` <utility> ` ](/w/cpp/header/utility "cpp/header/utility")  
` __cpp_lib_associative_heterogeneous_erasure ` |  202110L  |  [ ` <map> ` ](/w/cpp/header/map "cpp/header/map") [ ` <set> ` ](/w/cpp/header/set "cpp/header/set") [ ` <unordered_map> ` ](/w/cpp/header/unordered_map "cpp/header/unordered map") [ ` <unordered_set> ` ](/w/cpp/header/unordered_set "cpp/header/unordered set")  
` __cpp_lib_associative_heterogeneous_insertion ` |  202306L  |  [ ` <map> ` ](/w/cpp/header/map "cpp/header/map") [ ` <set> ` ](/w/cpp/header/set "cpp/header/set") [ ` <unordered_map> ` ](/w/cpp/header/un