1
我的工作被称为“BinarySearchTree”一个子类,从它的超类“二叉树”子类模板错误(C++):
二叉树继承:“错误‘根’在此范围内未声明”。^h
template <class T>
class BinaryTree
{
public:
BinaryTree() { root = NULL; }
protected:
BTNode<T> *root; // Root node (NULL if the tree is empty)
};
BinarySearchTree.h
template <class T>
class BinarySearchTree : public BinaryTree<T>
{
public:
BinarySearchTree(); // call super's
bool insert(const T& elem);
bool insertHelper(BTNode<T> *&, T);
};
template<class T>
BinarySearchTree<T>::BinarySearchTree() : BinaryTree<T>()
{
root = NULL; // <---- error: In constructor 'BinarySearchTree<T>::BinarySearchTree()'
//: BinarySearchTree.h:85: error: ‘root’ was not declared in this scope
};
我知道它与范围不被认可的根做的,但我要如何解决这个问题?
感谢,它的工作。 – CodeDoctorJL
只是一个后续问题,我怎么需要这样的范围呢? – CodeDoctorJL