“&”作为逻辑运算符以及作为位运算符的功能此处不再赘述。
1,取址
int *p = &a;
这里的p里面存储的就是变量a的地址。
2,引用
int &b = a;
此时b就是a的引用,或者称之为别名。如果修改b的值,那么a的值也会相应地发生改变。如b=1,那么a也就会跟着等于1。这种方式在函数传参的时候很常见,如果想函数执行完改变原参数的值,就应该在传参的时候,传入原来的实参的引用。
3,常引用
const int &b = a;
b = 1;//错误
a = 1;//正确
这种做法还有一些其它的应用,以后阐述。
4,作为函数的返回
以引用返回函数值,定义函数时需要在函数名前加&,用引用返回一个函数值的最大好处是,在内存中不产生被返回值的副本。