Palabras clave de C++: typename
De cppreference.com
Uso
- En una declaración de plantilla,
typenamepuede usarse como una alternativa a class para declarar tipos de parámetro de plantilla y parámetros de plantilla de plantilla (desde C++17). - Dentro de una declaración o una definición de una plantilla,
typenamepuede usarse para declarar que un nombre calificado dependiente es un tipo. - Dentro de una declaración o definición de una plantilla, (hasta C++11)
typenamepuede usarse antes de un nombre de tipo no dependiente, calificado. No tiene efecto en este caso. - Dentro de los requerimientos para requerimientos de tipo. (desde C++20)