Utility Class
A template for heterogenous pairs of values.
#include <utility> template <class T1, class T2> struct pair ;
The pair class provides a template for encapsulating pairs of values that may be of different types.
template <class T1, class T2>
struct pair { T1 first; T2 second; pair(); pair (const T1&, const T2&); ~pair(); }; template <class T1, class T2> bool operator== (const pair<T1, T2>&, const pair T1, T2>&); template <class T1, class T2> bool operator< (const pair<T1, T2>&, const pair T1, T2>&); template <class T1, class T2> pair<T1,T2> make_pair (const T1&, const T2&);
pair ();
Default contructor. Initializes first and second using their default constructors.
pair (const T1& x, const T2& y);
The constructor creates a pair of types T1 and T2, making the necessary conversions in x and y.
~pair ();
Destructor.
template <class T1, class T2> bool operator== (const pair<T1, T2>& x, const pair T1, T2>& y);
Returns true if (x.first == y.first && x.second == y.second) is true. Otherwise it returns false.
template <class T1, class T2> bool operator< (const pair<T1, T2>& x, const pair T1, T2>& y);
Returns true if (x.first < y.first || (!(y.first < x.first) && x.second < y.second)) is true. Otherwise it returns false.
template <class T1, class T2> pair<T1,T2> make_pair(x,y);
make_pair(x,y) creates a pair by deducing and returning the types of x and y.