【发布时间】:2015-01-19 02:12:40
【问题描述】:
#import<iostream>
using namespace std;
int main()
{
//trying to test pointers & reference
int x = 5;
int y = 6;
int *p;
p = &y;
*p = 10;
int &r = x;
cout<<"X reference\n"<<&r<<"\n"<<"value:"<<r<<"\n";
r=y;
cout<<"Y reference\n"<<&r<<"\n"<<"value:"<<r<<"\n";
}
在这段代码中,我首先将 &r 分配给 x,然后将 r 分配给 y。
- 分配 & r=x 和 r=y 有什么区别? 请帮帮我。
【问题讨论】:
-
您无法重新设置参考。这就是区别。为什么你的代码中有
import? -
尝试在程序结束时也打印出
x和y。 -
r 是 x 的别名。
&r = x将引用初始化为 x 的别名。由于 r 现在是 x 的别名,r=y与x=y相同。 -
@remyabel #import 是Microsoft specific preprocessor directive。