Espacios de nombres
Variantes
Acciones

Guías de deducción para std::tuple

De cppreference.com
< cpp‎ | utility‎ | tuple
 
 
Biblioteca de servicios
 
std::tuple
Funciones miembro
Funciones no miembro
(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
 
Definido en el archivo de encabezado <tuple>
template<class... UTypes>
tuple(UTypes...)-> tuple<UTypes...>;
(1) (desde C++17)
template<class T1, class T2>
tuple(std::pair<T1, T2>)-> tuple<T1, T2>;
(2) (desde C++17)
template<class Alloc, class... UTypes>
tuple(std::allocator_arg_t, Alloc, UTypes...)-> tuple<UTypes...>;
(3) (desde C++17)
template<class Alloc, class T1, class T2>
tuple(std::allocator_arg_t, Alloc, std::pair<T1, T2>)-> tuple<T1, T2>;
(4) (desde C++17)
template<class Alloc, class... UTypes>
tuple(std::allocator_arg_t, Alloc, tuple<UTypes...>)-> tuple<UTypes...>;
(5) (desde C++17)

Estas guías de deducción se proporcionan para std::tuple para tomar en cuenta los casos límite que se omitieron por las guías de deducción implícitas, en particular, los argumentos no copiables y la conversion de array a puntero.

[editar]Ejemplo

#include <tuple>int main(){int a[2], b[3], c[4];std::tuple t1{a, b, c};// se usa guía de deducción explícita en este caso}


close