C++中别名和地址应该怎么理解?
看着指针和引用的关系有点迷惑,请问C++中别名和地址应该怎么理解?别名到时是一个什么东西? C++ 指针 别名
[解决办法]
定义变量不是会用到nRet或i这些名称吗,比如int nRet = 0什么的,别名就是nRet的另外一个名字。指针里面的值就是地址,指针重要是因为我们经常需要根据内存空间的地址去找诸如nRet这些变量所代表的值。
[解决办法]
别名就是一个变量的别名。通过给这个别名赋值,也就相当于给原来的变量赋值,可以看着是一个固定的东西绑定到某个变量上了
[解决办法]
指针是间接引用,引用当然就是直接的了。指针中保存的是地址,地址的内容才是指针指向的内容,所以才把指针作为间接引用对待,因为可以通过修改指针来对应的修改指向的对象。
对于引用变量来说,它本身并没有被分配地址空间,它只是作为这个对象的另一个名字出现,也就是说,你的大名小名,指的都是你。
[解决办法]
别名其实就是变量的另外一个名字,比如一个人叫张勇,他还有另外一个名字叫张三,那么张三就是张勇的别名,但指的都是同一个人,对张三的操作就相当于对张勇的操作。
指针指向的就是一个地址,地址中包含了内容
[解决办法]
王五,外号王麻子,家住王府井15#;
int a = 0; //王五
int &ra = a; // 王麻子
int *pa = &a; // 王府井15#
*p = 1; // 家住王府井15#的那小子