int a=1
int &b=a
在语言层面上它就是变量a的别名,对a和b的操作实际效果相同。
但是实际实现过程中
其实b是一个指针
首先赋值是将a的地址传给b
在b中存放的是a的地址
在使用b的时候编译器会自动给b加入一个形成b,这样即可取得1。
&b是无法取得b的地址的,因为实际上是&(*b),即取得的是a的地址。
int a=1
int &b=a
在语言层面上它就是变量a的别名,对a和b的操作实际效果相同。
但是实际实现过程中
其实b是一个指针
首先赋值是将a的地址传给b
在b中存放的是a的地址
在使用b的时候编译器会自动给b加入一个形成b,这样即可取得1。
&b是无法取得b的地址的,因为实际上是&(*b),即取得的是a的地址。