Espacios de nombres
Variantes
Acciones

Diferencia entre revisiones de «cpp/utility/tuple/forward as tuple»

De cppreference.com
< cpp‎ | utility‎ | tuple
m (1 revisión: Translate from the English version)
m (r2.7.3) (Bot Añadido: de, en, fr, it, ja, pt, ru, zh)
Línea 54: Línea 54:
 
{{dcl list template | cpp/utility/tuple/dcl list tuple_cat}}
 
{{dcl list template | cpp/utility/tuple/dcl list tuple_cat}}
 
{{dcl list end}}
 
{{dcl list end}}
 +
 +
 +
 +
 +
 +
 +
 +
 +

Revisión de 12:11 2 nov 2012

 
 
Biblioteca de servicios
 
std::tuple
Funciones miembro
Funciones no miembro
forward_as_tuple
(hasta C++20)(hasta C++20)(hasta C++20)(hasta C++20)(hasta C++20)(C++20)
Guías de deducción(C++17)
Clases asistentes
 
Defined in header <tuple>
template< class... Types >
tuple<Types...> forward_as_tuple( Types&&... args );
(desde C++11)
Construye una tupla de referencias a los argumentos en args adecuados para la transmisión como argumento a una función. La tupla tiene rvalue miembros de datos de referencia cuando rvalues ​​se utilizan como argumentos, y por lo demás tiene lvalue miembros de datos de referencia. Si rvalues ​​se utiliza, el resultado de esta función debe ser consumido antes de que el punto de secuencia siguiente .
Original:
Constructs a tuple of references to the arguments in args suitable for forwarding as an argument to a function. The tuple has rvalue reference data members when rvalues are used as arguments, and otherwise has lvalue reference data members. If rvalues are used, the result of this function must be consumed before the next sequence point.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Contenido

Parámetros

args -
cero o más argumentos para construir la tupla
Original:
zero or more arguments to construct the tuple from
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Valor de retorno

Un objeto creado std::tuple como por std::tuple<Types&&...>(std::forward<Types>(args)...)
Original:
A std::tuple object created as if by std::tuple<Types&&...>(std::forward<Types>(args)...)
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Excepciones

Especificación noexcept:  
noexcept
  (desde C++11)

Ejemplo

#include <iostream>
#include <map>
#include <tuple>
#include <string>
 
int main()
{
    std::map<int, std::string> m;
 
    // same as m.emplace(10, 20, 'a');
    m.emplace(std::forward_as_tuple(10, std::string(20, 'a')));
    std::cout << "m[10] = " << m[10] << '\n';
 
    // The following is an error: it produces a
    // std::tuple<int&&, std::string&&> holding two dangling references.
    //
    // auto t = std::forward_as_tuple(10, std::string(20, 'a'));
    // m.emplace(t);
}

Salida:

m[10] = aaaaaaaaaaaaaaaaaaaa
Plantilla:cpp/utility/tuple/dcl list make tuplePlantilla:cpp/utility/tuple/dcl list tiePlantilla:cpp/utility/tuple/dcl list tuple cat