C++ 引用

[转]http://www.cnblogs.com/Mr-xu/archive/2012/08/07/2626973.html

[转]http://blog.youkuaiyun.com/webscaler/article/details/6577429


重点:引用 本()质()上() 引用是“指针常量”。


像这样的就是引用:
int a, &ra=a;
【注】
1.声明引用变量时应该同时进行初始化,就是声明是必须同时指明是哪个变量的引用。
2.不能再将该引用作其他变量的引用。
3.不能指向数组。
4.可以作为左值。

本质

本质上引用是“指针常量”,int &ra=a; <=> int * const ra=a;
当使用的时候,编译器将ra编译成*ra。
所以:1.声明时必须初始化
2.不能再做其他变量的引用
3.数组和引用不是一个级别的数组引用可以写为 int (&ra)[10]=a;

使用

1.作为入参。
2.常引用+作为入参。
3.作为返回值。
①不能返回局部变量的引用
②不要返回函数内部new分配的内存的变量(返回的引用作为临时变量,忘记delete,容易造成内存泄露)
③可以作为左值,类似cout << "hello" << endl;
 =的返回值、拷贝构造函数的参数、赋值操作符=的参数、其它情况都推荐使用引用。




评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值