Member

Description

first_type

The type of the pair's first component. This is a typedef for
the template parameter T1

second_type

The type of the pair's second component. This is a typedef for
the template parameter T2

pair()

The default constructor. It uses constructs objects of types
T1 and T2 using their default constructors. This constructor
may only be used if both T1 and T2 are DefaultConstructible.

pair(const first_type& x, const second_type& y)

The pair constructor. Constructs a pair such that first is constructed
from x and second is constructed from y.

first

Public member variable of type first_type: the first object stored in the pair.

second

Public member variable of type second_type: The second object stored in the pair.

template <class T1, class T2>
bool operator==(const pair<T1,T2>& x,
const pair<T1,T2>& y);

The equality operator. The return value is true if and only
the first elements of x and y are equal, and the second
elements of x and y are equal. This operator may only
be used if both T1 and T2 are EqualityComparable.
This is a global function, not a member function.

template <class T1, class T2>
bool operator<(const pair<T1,T2>& x,
const pair<T1,T2>& y);

The comparison operator. It uses lexicographic comparison:
the return value is true if the
first element of x is less than the first element of y,
and false if the first element of y is less than the first
element of x. If neither of these is the case, then
operator< returns the result of comparing the second elements
of x and y. This operator may only
be used if both T1 and T2 are LessThanComparable.
This is a global function, not a member function.

template <class T1, class T2>
pair<T1, T2> make_pair(const T1& x, const T2& x)

Equivalent to pair<T1, T2>(x, y).
This is a global function, not a member function.
It exists only for the sake of convenience.
