Un constructor de una clase puede ser una función de plantilla. En el punto en el que se llama a un constructor de este tipo, el compilador normalmente examina los argumentos dados al constructor y determina los parámetros de plantilla usados a partir de ellos. ¿También hay alguna sintaxis para especificar los parámetros de la plantilla explícitamente?¿Se pueden especificar explícitamente los parámetros de plantilla de un constructor?
Un ejemplo artificioso:
struct A {
template<typename T>
A() {}
};
¿Hay una manera de crear una instancia de esta clase? ¿Cuál es la sintaxis para especificar explícitamente los parámetros de la plantilla del constructor?
Mi caso de uso sería un problema fuera no parece que el compilador para encontrar el constructor con plantilla correcta. Especificar explícitamente los parámetros de la plantilla probablemente generaría más mensajes de error útiles o incluso resolvería el problema.
explícitamente que especifican argumentos de plantilla para los constructores sólo funciona en especializaciones explícitas, ejemplificaciones, de las definiciones de línea y declaraciones amigo del constructor. –
'template struct A { template A() {} };' funciona bien para mí. Pero, por supuesto, ahora tenemos clase de plantilla. –
bruziuz