写这篇文章时:
void foo(int*& x);
如果我理解正确的话,而不是&
中和*
,foo
接受x
类型的int*
引用。
但是当我写这篇文章时会发生什么:
void foo(int&* x);
是指向引用的指针吗? 编译器会优化它并获取实际值吗?因为取消引用一个引用,如果它是自己的值。
编辑:
所以我不能把指针指向引用,但为什么呢?它是否与引用的地址是堆栈地址有关?
答案 0 :(得分:3)
§8.3.2[dcl.ref] / p5:
不应引用引用,也不引用引用数组, 并没有指向参考的指针。
答案 1 :(得分:2)
int&*
格式不正确,不能指向引用的指针。