Biblioteca de tuplas de C ++ - tuple_cat

Descripción

Construye un objeto del tipo de tupla apropiado para contener una concatenación de los elementos de todas las tuplas en tpls, en el mismo orden.

Declaración

A continuación se muestra la declaración de std :: tuple_cat.

C ++ 98

template <class... Tuples>
   tuple<CTypes...> tuple_cat (Tuples&&... tpls);

C ++ 11

template <class... Tuples>
   tuple<CTypes...> tuple_cat (Tuples&&... tpls);

C ++ 14

template <class... Tuples>
   tuple<CTypes...> tuple_cat (Tuples&&... tpls);

Parámetros

tpls- Separa la lista de objetos de tupla. Estos pueden ser de diferentes tipos.

Valor devuelto

Devuelve un objeto de tupla del tipo apropiado para contener argumentos.

Excepciones

No-throw guarantee - esta función miembro nunca arroja excepciones.

Carreras de datos

Ninguno introducido por esta convocatoria.

Ejemplo

En el siguiente ejemplo para std :: tuple_cat.

#include <iostream>
#include <utility>
#include <string>
#include <tuple>

int main () {

   std::tuple<float,std::string> mytuple (3.14,"pi");
   std::pair<int,char> mypair (100,'x');

   auto myauto = std::tuple_cat ( mytuple, std::tuple<int,char>(mypair) );

   std::cout << "myauto contains: " << '\n';
   std::cout << std::get<0>(myauto) << '\n';
   std::cout << std::get<1>(myauto) << '\n';
   std::cout << std::get<2>(myauto) << '\n';
   std::cout << std::get<3>(myauto) << '\n';

   return 0;
}

La salida debería ser así:

myauto contains: 
3.14
pi
100
x