Я знаю, что это, вероятно, вопрос первого года, но у меня есть некоторые проблемы с шаблонами, и я еще не нашел подходящий ответ. Я пытаюсь создать новый шаблонный класс следующим образом:
TreeNode <T>newLeft = new TreeNode(root->data[0]);
Что относится к конструктору, который выглядит следующим образом:
template <class T>
//paramerter receving constructor
TreeNode<T>::TreeNode(T item){
data[0] = item;
nodeType = 2;
}//end
И я получаю следующие ошибки:
ошибка: ожидаемый спецификатор типа перед «TreeNode»
ошибка: ожидается `; ' до "TreeNode"
Что такое спецификатор типа? Я могу предоставить больше кода, если это необходимо, и я знаю, что задал вопрос об этом коде ранее, и я уверен, что я буду за это заслужен; но у меня все еще есть вопросы ...
редактирование:
Вот функция, в которой он используется:
template <class T>
void TwoThreeFourTree<T>::splitRoot(){
TreeNode <T> newRoot;
newRoot = new TreeNode(root->data[1]);
TreeNode <T>newLeft = new TreeNode(root->data[0]);
TreeNode <T>newRight = new TreeNode(root->data[2]);
newRoot.child[0] = newLeft;
newRoot.child[1] = newRight;
newLeft.child[0] = root.child[0];
newLeft.child[1] = root.child[1];
newRight.child[0] = root.child[2];
newRight.child[1] = root.child[3];
root = newRoot;
}
И я получаю одни и те же две ошибки каждый раз, когда пытаюсь создать новый объект в функции