У меня есть шаблон класса Binary-Tree с несколькими открытыми и закрытыми функциями-членами.Когда функции-члены определены и реализованы внутри шаблона класса, он правильно компилируется и функционирует, как и ожидалось.Однако, когда я перемещаю эти функции за пределы шаблона основного класса, я получаю кратность ошибок.
Есть ли что-то, чего мне здесь не хватает?
template <class type>
class BinaryTree{
private:
Node<type>* root;
void internalTraverse(Node<type>* n){}
......
public:
......
};
template <class type>
void BinaryTree<type>::internalTraverse(Node<type>* n){
if (n == NULL){
return;
}
internalTraverse(n->left); // <- This declaration has no storage type or identifier
cout << "Node: " << n->data << endl;// Ditto
internalTraverse(n->right); // Ditto
};
......
Для полного раскрытия: это часть домашнего задания.Тем не менее, это не имеет прямого отношения к цели присвоения - больше касательной проблемы