作为一般规则,使用函数参数和返回类型中的引用来定义有吸引力的接口.使用指针实现算法和数据结构.
我在一篇文章中读到了这一行.我怀疑为什么参考不能用于算法和数据结构?
请帮我看看为什么会这样.
因为在初始化引用特定的对象之后,不能引用引用任何其他对象.
作为证据,标准的§8.5.3.2说
初始化后,无法更改引用以引用另一个对象.请注意,引用的初始化与赋值的处理方式非常不同.参数传递(5.2.2)和函数值返回(6.6.3)是初始化.
数据结构和算法(尽管程度较小)通常涉及在其自身内添加,删除和重新排序对象.使用引用你不能这样做,所以你使用指针来低成本地做.
| 归档时间: |
|
| 查看次数: |
161 次 |
| 最近记录: |