| Defined in header <utility> | ||
|---|---|---|
template<
class T1,
class T2
> struct pair; |
std::pair is a struct 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.
Template parameters
| T1, T2 | - | the types of the elements that the pair stores. |
Member types
| Member type | Definition |
|---|---|
first_type | T1 |
second_type | T2 |
Member objects
| Member name | Type |
|---|---|
first | T1 |
second | T2 |
Member functions
| constructs new pair (public member function) | |
| operator=
| assigns the contents (public member function) |
| (C++11) | swaps the contents (public member function) |
Non-member functions
creates a pair object of type, defined by the argument types (function template) | |
| lexicographically compares the values in the pair (function template) | |
| (C++11) | specializes the std::swap algorithm (function template) |
| (C++11) | accesses an element of a pair (function template) |
Helper classes
| (C++11) | obtains the size of a pair (class template specialization) |
| (C++11) | obtains the type of the elements of pair (class template specialization) |
See also
| (C++11) | implements fixed size container, which holds elements of possibly different types (class template) |
creates a tuple of lvalue references or unpacks a tuple into individual objects (function template) |
Please login to continue.