引用与指针的比较
引用优于指针使用的原因有:
1. 引用拥有指针一样免对象复制的参数传递能力
2. 引用不需要检查是否为空,没法检查
3. 引用指向的对象一旦初始化后是固定的,不会像指针那样同一个指针可以不同时候指向不同对象
4. 引用不能用左值初始化,所以不能用临时对象比如函数返回值传给引用
5. const引用可以保证指向对象不会被改变
6. const引用可以用左值初始化,并使这个左值临时变量的生命周期保持到引用的作用域结束
7. const引用不能拿来初始化非const的变量,增加了安全性,这个指针也有同样效果
8. 不论指针和引用,都不要试图作为返回值,并让他们指向栈对象
9. 指针可以用来返回函数内创建的堆对象,然后交给智能指针管理
10. 容器中不允许放引用,因为没法自动初始化,指针可以