【发布时间】:2020-06-15 19:45:10
【问题描述】:
这里我有一个带有类模板的二叉搜索树类:
template <class T>
class Tree {
T* root_ptr;
public:
void Insert(T* ptr_to_value);
};
template <typename T>
void Tree<T>::Insert(T* ptr_to_value) {
T** temp = &root_ptr;
while (*temp) {
if (ptr_to_value->name <= (*temp)->name)
temp = &(*temp)->left_ptr;
else
temp = &(*temp)->right_ptr;
}
(*temp) = ptr_to_value;
}
但它指的是T 类的name 变量,我可能希望与其他成员变量进行比较。我想要template </*some type*/ data> 之类的东西,这样我就可以初始化Tree<Node, name> 或Tree<Node, Node.name> 之类的树。
【问题讨论】:
-
with other member variable什么?你能给我们举个例子吗?如果Node始终存在,只需将其用作您的Tree<T>成员类型Node<T> root_ptr