0
我构建一个简单的AVL树,并接收来自GCC以下编译器错误:AVL树最小值和最大值函数编译错误
错误:预期的构造函数,析构函数或类型之前,“*”标记
转换实现文件中的最小和最大函数声明都会收到错误。
以下两个成员函数的问题:
template <typename T>
tree_t<T>::node_t* tree_t<T>::min(node_t* t) const
{
node_t *temp = t;
while(temp->left != NULL)
{
temp = temp->left;
}
return temp;
}
template <typename T>
tree_t<T>::node_t* tree_t<T>::min(tree_t<T>::node_t*) const
{
node_t *temp = t;
while(temp->left != NULL)
{
temp = temp->left;
}
return temp;
}
以下是声明: 市民:
node_t* min(node_t* t) const;
node_t* max(node_t*) const;
这里是类和node_t结构声明
template <typename T>
class tree_t
{
private:
struct node_t
{
T data;
node_t *left;
node_t *right;
int height;
int bal;
node_t(const T& Element, node_t *lt, node_t *rt, int h = 0)
: data(Element), left(lt), right(rt), height(h) {};
};
node_t * root;