我试图用一个在树中插入一个值的类的成员来实现一个简单的BST。我遵循如下代码:
class BST {
public:
int value;
BST* left;
BST* right;
BST(int val);
BST& insert(int val);
};
但是我不明白返回类型BST&的含义。这是什么意思?
这是对BST实例的引用。这意味着您可以通过该引用来更改BST,例如:]
BST tree(1);
BST &newNode = tree.insert(3);
newNode.value = 4;
上面的代码片段将创建一个值为1的树,然后插入一个值为3的节点,但在第三行中将该值替换为4。
有关C ++引用的更多信息,请考虑阅读:
What are the differences between a pointer variable and a reference variable in C++?