我正在编写一个递归的bst插入函数,并且意识到我正在修改该结构的副本。
因此,我从此更改了函数的原型:
void BSTRecursiveInsert(BSTNode* tree, DataObject* elem)
对此:
void BSTRecursiveInsert(BSTNode*& tree, DataObject* elem)
但是我得到了我写为问题标题的编译器错误。我想念什么?
答案 0 :(得分:-4)
&供参考, *是用于指针
#include <iostream>
main()
{
int x = 5;
int *y = &x;
int &z = x;
std::cout << x << "," << *y << "," << z << std::endl;
}
一旦理解了这一点,就会明白自己犯的错误。