节点*和节点之间的差异*& C ++

时间:2014-09-13 22:27:21

标签: c++ pointers

node*node *&传递给函数有什么区别?他们俩都没有通过内存地址吗?当你使用一个而不是另一个时,你实际上通过了什么?

2 个答案:

答案 0 :(得分:2)

node *&表示法是对指向节点对象的指针的引用,允许您更改指针指向的内存地址(通过ref)以及节点值(通过指针)。使用node *表示法只允许您实现后者。

答案 1 :(得分:2)

node *&是对指针的引用,而node*只是指针。

通过这种方式,node *&增加了一个额外的间接级别,它基本上是某个node *(指向node的指针)的第二个名称。它最常用于参数传递。

请详细了解here