Durante la lectura de un artículo, me encontré con la siguiente sintaxis:¿Cómo puede heredar una clase de una plantilla basada en sí misma?
template <typename T>
class MyTemplate
{
T* member;
T* method();
// ...
}
class MyClass : public MyTemplate<MyClass>
{
// ...
}
No entiendo exactamente cómo MyClass
puede heredar de una plantilla que se basa en sí mismo. ¿Podría explicarme cómo funciona esto?
No diría que 'MyClass' está incompleto. Puede ser que desee que se proporcione alguna funcionalidad genérica para esta clase. Por ejemplo [Ejemplo] (http://drdobbs.com/cpp/184403484). –
@ R.K en el punto de 'public MyTemplate', 'MyClass' es de hecho un tipo incompleto. Significa que puede almacenar punteros y referencias, etc. –
Sí, tiene razón. Ahora que vuelvo a leer tu descripción, es correcta. Pensé que querías decir que MyClass es, por ejemplo, un tipo incompleto. –