在查看二进制搜索树的代码时,我遇到了这个表达式,
Node *&t;
Node是struct。为什么t
需要同时成为指针和引用?
问候
答案 0 :(得分:2)
这是对指针的引用(因为pointers to references are illegal in C++)。这意味着,t
代表一些变量,而变量又是指向Node
的指针。
很难判断,如果没有一些代码,这个变量用于什么,但场景可能如下所示:
void MoveNext(Node * & t)
{
t = t->next;
}
// (...)
Node * current = head;
MoveNext(current);
// Now current points to second item