std::pair
<utility>
class T1,
class T2
std::pair
is a class template that provides a way to store two heterogeneous objects as a single unit. A pair is a specific case of a std::tuple with two elements.
If neither T1
nor T2
is a possibly cv-qualified class type with non-trivial destructor, or array thereof, the destructor of pair
is trivial.
Contents
[edit] Template parameters
[edit] Member types
first_type
T1
second_type
T2
[edit] Member objects
first
T1
second
T2
[edit] Member functions
[edit] Non-member functions
pair
(function template) [edit]
[edit] Helper classes
[edit] Helper specializations
constexpr bool enable_nonlocking_formatter_optimization<std::pair<T, U>> =
enable_nonlocking_formatter_optimization<T> &&
This specialization of std::enable_nonlocking_formatter_optimization enables efficient implementation of std::print and std::println for printing a pair
object when both T
and U
enable it.
[edit] Deduction guides (since C++17)
[edit] Defect reports
The following behavior-changing defect reports were applied retroactively to previously published C++ standards.
DR | Applied to | Behavior as published | Correct behavior |
---|---|---|---|
LWG 2796 | C++98 | triviality of the destructor of pair was unspecified
|
specified |
[edit] See also
(class template) [edit]