引用与指针的比较

引用优于指针使用的原因有:

1. 引用拥有指针一样免对象复制的参数传递能力

2. 引用不需要检查是否为空,没法检查

3. 引用指向的对象一旦初始化后是固定的,不会像指针那样同一个指针可以不同时候指向不同对象

4. 引用不能用左值初始化,所以不能用临时对象比如函数返回值传给引用

5. const引用可以保证指向对象不会被改变

6. const引用可以用左值初始化,并使这个左值临时变量的生命周期保持到引用的作用域结束

7. const引用不能拿来初始化非const的变量,增加了安全性,这个指针也有同样效果

8. 不论指针和引用,都不要试图作为返回值,并让他们指向栈对象

9. 指针可以用来返回函数内创建的堆对象,然后交给智能指针管理

10. 容器中不允许放引用,因为没法自动初始化,指针可以

posted @ 2015-01-29 14:11  枪侠  阅读(166)  评论(0编辑  收藏  举报