Я немного озадачен тем, как правильно объявить класс, унаследованный от класса шаблона.
Базовый класс выглядит так (не считая ненужных битов):
template <class Writer>
class Node
{
Writer* writer;
...
public:
Node (std::string& root);
...
}
Как правильно объявить и построить наследуемый класс этого?Я думал что-то вроде:
template <class Writer>
class IndexNode : public Node
{...}
Однако, делая это, я получаю "expected class-name before '{' token
".Я пытался закомментировать объявление шаблона в унаследованном классе, думая, что, возможно, само объявление шаблона было унаследовано от родителя, но это тоже не помогло, и также попытался
class IndexNode : template <class Writer> public Node
{...}
, думая, что, возможно,Шаблон должен был быть явно привязан к базовому классу.Я подумал, а не продолжать наносить удар по правильной комбинации, я бы попросил помощи и, надеюсь, выучил кое-что, что поможет мне понять причины этого.
Спасибо!