Espacios de nombres
Variantes

std::make_pair

De cppreference.com
 
 
Biblioteca de servicios
Apoyo del lenguaje
Apoyo de tipos (tipos básicos, RTTI)
Macros de prueba de característica de la biblioteca (C++20)
Servicios de programa
Funciones variádicas
Apoyo de corrutinas (C++20)
Apoyo de contratos (C++26)
Comparación de tres vías (C++20)
(C++20)
(C++20)(C++20)(C++20)  
(C++20)(C++20)(C++20)

 
std::pair
Funciones miembro
Funciones no miembro
(hasta C++20)(hasta C++20)(hasta C++20)(hasta C++20)(hasta C++20)(C++20)
(C++11)
Guías de deducción(C++17)
Clases auxiliares
(C++11)
 
Definido en el archivo de encabezado <utility>
template< class T1, class T2 >
std::pair<T1,T2> make_pair( T1 t, T2 u );
(hasta C++11)
template< class T1, class T2 >
std::pair<V1,V2> make_pair( T1&& t, T2&& u );
(desde C++11)
(hasta C++14)
template< class T1, class T2 >
constexpr std::pair<V1,V2> make_pair( T1&& t, T2&& u );
(desde C++14)

Crea un objeto std::pair, deduciendo el tipo destino de los tipos de los argumentos.

Los tipos deducidos V1 y V2 son std::decay<T1>::type y std::decay<T2>::type (las transformaciones habituales de tipo aplicadas a los argumentos de funciones pasadas por valor) a menos que la aplicación de std::decay resulte en std::reference_wrapper<X> para algún tipo X, en cuyo caso el tipo deducido es X&.

(desde C++11)

Parámetros

t, u - Los valores a partir de los cuales construir el par.

Valor de retorno

Un objeto std::pair que contiene los valores dados.

Ejemplo

#include <iostream>
#include <utility>
#include <functional>

int main()
{
    int n = 1;
    int a[5] = {1, 2, 3, 4, 5};

    // construir un par a partir de dos enteros
    auto p1 = std::make_pair(n, a[1]);
    std::cout << "El valor de p1 es "
              << "(" << p1.first << ", " << p1.second << ")\n";

    // construir un par a partir de una referencia a int y un array (que decae a puntero)
    auto p2 = std::make_pair(std::ref(n), a);
    n = 7;
    std::cout << "El valor de p2 es "
              << "(" << p2.first << ", " << *(p2.second + 2) << ")\n";
}

Salida:

El valor de p1 is (1, 2)
El valor de p2 is (7, 3)
Morty Proxy This is a proxified and sanitized view of the page, visit original site.