Libreria di tuple C ++ - forward_as_tuple
Descrizione
Costruisce un oggetto tupla con riferimenti rvalue agli elementi in args adatti per essere inoltrati come argomenti a una funzione.
Dichiarazione
Di seguito è riportata la dichiarazione per std :: forward_as_tuple.
C ++ 98
template<class... Types>
tuple<Types&&...> forward_as_tuple (Types&&... args) noexcept;
C ++ 11
template<class... Types>
tuple<Types&&...> forward_as_tuple (Types&&... args) noexcept;
C ++ 14
template<class... Types>
constexpr tuple<Types&&...> forward_as_tuple (Types&&... args) noexcept;
Parametri
args - Contiene un elenco di elementi che la tupla costruita deve contenere.
Valore di ritorno
Restituisce un oggetto tupla del tipo appropriato per contenere gli argomenti.
Eccezioni
No-throw guarantee - questa funzione membro non genera mai eccezioni.
Gare di dati
Nessuno introdotto da questo invito.
Esempio
Nell'esempio seguente per std :: forward_as_tuple.
#include <iostream>
#include <tuple>
#include <string>
void print_pack (std::tuple<std::string&&,int&&> pack) {
std::cout << std::get<0>(pack) << ", " << std::get<1>(pack) << '\n';
}
int main() {
std::string str ("Tutorialspoint.com");
print_pack (std::forward_as_tuple(str+" sairamkrishna",25));
print_pack (std::forward_as_tuple(str+" Gopal",22));
print_pack (std::forward_as_tuple(str+" Ram",30));
return 0;
}
L'output dovrebbe essere così -
Tutorialspoint.com sairamkrishna, 25
Tutorialspoint.com Gopal, 22
Tutorialspoint.com Ram, 30