指针和引用大部分时间都能达到同样的效果
但指针更具灵活性,高效率的同时也带着极大的风险
那么,他们有什么区别呢
*this 这就是一个对对象的引用
this 这就是一个指针
int &a = b; 引用
int *a = b; 指针
看起来牛马不相及吧,
第一、那么,我觉得引用 无非就是共享存储单元, 别管你写的a,b,c起的什么乱七八糟的,或者很规范的变量名
对于计算机而言,他们只要指向同一个内存地址,那就是引用
2.
第二、指针是什么呢,跟引用类似,只不过指向的是那个存储单元的地址
*this和对象是指向的同一个存储空间吧, 那么他就是引用
int &a = b;定义并初始化了一个引用类型,那么,可以猜测,他们的内存地址一定是相同的
int *a = b; 他们本身的内存地址一定是不同的
而对指针变量做解引用运算 *a, *a又成了一种引用 &(*a) 得到的地址就是b的地址
若有不同意见,还望指正。