decay (Clase)
Genera el tipo tal y como se pasa por valor. Crea el tipo sin referencia, no constante y no volátil, o crea un puntero al tipo a partir de una función o un tipo de matriz.
Sintaxis
template <class T>
struct decay;
template <class T>
using decay_t = typename decay<T>::type;
Parámetros
T
Tipo que se va a modificar.
Comentarios
Use la plantilla decay para producir el tipo resultante como si el tipo se hubiera pasado por valor como un argumento. El objeto typedef de miembro de plantilla de clase type
contiene un tipo modificado que se define en las siguientes fases:
El tipo
U
se define comoremove_reference<T>::type
.Si
is_array<U>::value
es True, el tipo modificadotype
esremove_extent<U>::type *
.De lo contrario, si
is_function<U>::value
es True, el tipo modificadotype
esadd_pointer<U>::type
.De lo contrario, el tipo modificado
type
esremove_cv<U>::type
.
Requisitos
Encabezado:<type_traits>
Espacio de nombres: std