Descrição
Ele constrói um objeto de par com seu primeiro elemento definido como x e seu segundo elemento definido como y.
Declaração
A seguir está a declaração para a função std :: make_pair.
template <class T1, class T2>
pair<T1,T2> make_pair (T1 x, T2 y);
C ++ 11
template <class T1, class T2>
pair<V1,V2> make_pair (T1&& x, T2&& y);
Parâmetros
x, y - São dois valores.
Valor de retorno
Ele retorna um objeto de par cujos elementos primeiro e segundo são definidos como x e y respectivamente.
Exceções
Basic guarantee - se a construção ou atribuição de tipo T lançar.
Corridas de dados
Se (ou ambos) T1 ou T2 for um tipo de referência rvalue de um tipo que oferece suporte à semântica de movimentação, seu argumento correspondente será modificado.
Exemplo
No exemplo abaixo explica sobre a função std :: make_pair.
#include <utility>
#include <iostream>
int main () {
std::pair <int,char> foo;
std::pair <int,int> bar;
foo = std::make_pair (1,'A');
bar = std::make_pair (100,3);
std::cout << "foo: " << foo.first << ", " << foo.second << '\n';
std::cout << "bar: " << bar.first << ", " << bar.second << '\n';
return 0;
}
Vamos compilar e executar o programa acima, isso produzirá o seguinte resultado -
foo: 1, A
bar: 100, 3