#include<iostream>
#include<iomanip>
using namespace std;
int main() {
int a = 0;
const int& b = a;
cout << a << setw(10) << &a << endl;
cout << b << setw(10) << &b << endl;
a = 1;//给a赋值;
cout << a << setw(10) << &a << endl;
cout << b << setw(10) << &b << endl;
b = 1; //表达式必须是可修改的左值
cout << a << setw(10) << &a << endl;
cout << b << setw(10) << &b << endl;
system("pause");
return 0;
}
对此我作为一个新手表示疑惑,b作为a的引用别名,只想同一个内存地址00D9FC84,
为什么可以通过a改变此内存地址中存放的数据值,然而b作为a的const别名,却无法改变此内存地址的存放数据值 对此我个人猜想了几个问题所在点:
1. 变量名和其对应内存地址的关系我完全弄明白。。。。。。。
2. 一个内存是否只读CONST是可以改变的。。。。。。。。。
新手发帖,多加指教!