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