Reference
C Library
IOstream Library
Strings library
STL Containers
STL Algorithms
Miscellaneous
Miscellaneous
complex
exception
functional
iterator
limits
locale
memory
new
numeric
stdexcept
typeinfo
utility
valarray
utility
make_pair
pair
rel_ops


make_pair

function template
<utility>
template <class T1, class T2> pair<T1,T2> make_pair (T1 x, T2 y);

Construct pair object

Constructs a pair object with its first element set to x and its second element set to y.

The types for the pair class are implicitly deduced from the arguments passed to make_pair.

pair objects can be copy-constructed from other pair objects containing different types, if the respective types are implicitly convertible.

The function is defined as:

1
2
3
4
5
template <class T1,class T2>
  pair<T1,T2> make_pair (T1 x, T2 y)
  {
    return ( pair<T1,T2>(x,y) );
  }


Parameters

x, y
Values for the elements first and second, respectively, of the pair object being constructed.

Return value

A pair object whose template paramenters are deduced from the arguments passed to the function, and whose elements first and second are set to them.

Example

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
#include <iostream>
#include <utility>
using namespace std;
int main () {
  pair <int,int> one;
  pair <int,int> two;
  one = make_pair (10,20);
  two = make_pair (10.5,'A'); // ok: implicit conversion from pair<double,char>
  cout << "one: " << one.first << ", " << one.second << "\n";
  cout << "two: " << two.first << ", " << two.second << "\n";
  return 0;
}


Output:

one: 10, 20
two: 10, 65

See also