Mer*_*Man 4 c++ variables pointers
我在期末考试中发现了这个:
int a = 564;
int* pa = &a;
int *& pr = pa;
cout << *pr;
Run Code Online (Sandbox Code Playgroud)
根据多项选择答案,代码有效,并显示a的值.
但我对第3行的评估和优先级感到困惑.C的操作顺序表明*和&具有相同的顺序.那么,那会是int *(&pr)吗?如何用文字描述?
谢谢.
第三行定义指针引用(或指针的引用,如果需要).将它分配给指针pr实际上是一个别名pa,并且在评估时,它指向指向的位置pa,即a.
在变量的声明中,*并&没有运算符的含义,所以优先级在这里没有意义.