テンプレート化されたバイナリ検索ツリーで特定のキーを持つ値を検索し、そのデータ値へのポインターを返す関数に取り組んでいます。指定されたキーがツリーに存在しない場合、返されるポインターは 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;
}
しかし、実行しようとすると、アイテムからアイテムに変換できないというエラーが表示されます*。私は常にポインターに問題があり、これらのエラーを修正する方法がわかりません。