Код: Выделить всё
template <class Der>
class Base{
// объект хранит операции над данными наследников, класс которых передаётся переменной <Der>
};
// описываю один из шаблонов наследников класса Base:
template <class C>
class Derived: public Base<Derived>{
// ...
};
Дело в том, что у меня это не компилируется, с жалобой "Cannot generate template specialization from Base<Der>"
Вроде бы должна работать, но что не так?
Например, вот так работает:
Код: Выделить всё
template <class Der>
class Base{
// объект хранит операции над данными наследников, класс которых передаётся переменной <Der>
};
// описываю один из наследников класса Base:
class Derived: public Base<Derived>{
// ...
};