【发布时间】:2014-10-12 10:02:30
【问题描述】:
写这篇的时候:
void foo(int*& x);
如果我理解正确,foo 接受 x 类型的 x 引用,而不是 & 中和 *。
但是当我写这个时会发生什么:
void foo(int&* x);
这是一个指向引用的指针吗? 编译器会优化它并取实际值吗?因为如果它本身的值取消引用引用。
编辑:
所以我不能将指针指向引用,但这是为什么呢?它与引用的地址是堆栈地址有关吗?
【问题讨论】:
-
如果您的编译器接受它,我会感到非常惊讶。我的没有。你试过了吗?
-
gcc:错误:无法声明指向“int&”的指针
-
对指针的引用是 C++ 最不可读的特性之一。与将指针传递给指针相比,这有什么优势?
-
int*&是对指针的引用。类似于int**
标签: c++ reference dereference