我正在开发一个函数,该函数在模板化二叉搜索树中搜索具有给定键的值,然后返回指向该数据值的指针。如果给定的键在树中不存在,它返回的指针应该指向 NULL。到目前为止,我有:
template <typename Item, typename Key>
Item* BSTree<Item,Key>::search(const Key& key) const {
Item* entry = NULL;
Node* cursor = root;
while(cursor != NULL) {
if(key > cursor->data)
cursor = cursor->right;
else if(key < cursor->data)
cursor = cursor->left;
else
entry = cursor->data;
}
return entry;
}
但是当我尝试运行它时出现错误,说我无法从 Item 转换为 Item*。我一直遇到指针问题,无法找到解决这些错误的方法。