decltypees una palabra clave del lenguaje de programación C++ que apareció en el estándar C++11 actualizado . Junto con la palabra clave, autose utiliza para inferir los tipos de las expresiones que toma como argumento.
La palabra clave decltypeha encontrado un amplio uso cuando se trabaja con tipos de datos genéricos . La diferencia entre decltypey autose reduce al tipo del valor de retorno: el resultado del uso autopierde los calificadores de tipo consty &, y el resultado del uso decltypelos retiene para trabajos posteriores [1] [2] .
También en el estándar C++11, la palabra clave decltypese puede usar para declarar el tipo de retorno de una función en los casos en que se usa una nueva forma de escribir la firma de una función (en la que el valor de retorno sigue la lista de sus parámetros) [3 ] .
El estándar de lenguaje C++14 actualizado introdujo la capacidad de declarar variables con un especificador de tipo decltype(auto), que indica al compilador que elija un tipo de datos para ellas en función del tipo del inicializador [4] .