35个改善编程与设计的有效方法
基础议题
条款1:仔细区别pointers和references
- reference:
- 一定要代表某个对象,所以必须有初值。
- 比pointers可能更有效率,因为在使用reference之前不需要测试其有效性。
- 初始化后不可更改
- 不存在reference的reference,因为其只作用于对象。
- pointers:
- 可以初值为null。
- 使用前判断它是否为null
- 可以重新赋值,指向另一个对象
结论
当你知道你需要指向某个东西,而且绝不会改变指向其他东西,或是当你实现一个操作符而其语法需求无法有pointers达成,就应该选择references。其他情况,请使用pointers。