引用充当一个已定义变量的别名,就像一个人有个大名(王元),可能也有一个小名(海外野叟),不管怎样,大名小名都是指同一个人。
所以一个变量及其引用,都指向同一个值和相同的地址
#include <iostream>
int main()
{
using namespace std;
int rats = 100;
int & rodents = rats;
cout << "rats = " << rats << endl;
cout << "rodents = " << rodents << endl;
rodents++;
cout << "rats = " << rats << endl;
cout << "rodents = " << rodents << endl;
cout << "rats address = " << &rats << endl;
cout << "rodents address = " << &rodents << endl;
return 0;
}
执行结果:
samuel@samuel-VirtualBox:/media/sf_D_DRIVE/work/codes$ g++ reference.cpp -o ref
samuel@samuel-VirtualBox:/media/sf_D_DRIVE/work/codes$ ./ref
rats = 100
rodents = 100
rats = 101
rodents = 101
rats address = 0x7ffc2d89d5bc
rodents address = 0x7ffc2d89d5bc