【发布时间】:2013-10-13 18:58:32
【问题描述】:
我正在阅读一本关于 C++ 的书,其中有一个示例,他们通过引用将常量传递给函数。
int square(const int& n)
...
我看不出这有什么意义?如果您不打算对变量进行任何更改,为什么不直接按值传递它。不是通过引用传递的全部意义,因此您可以更改变量的值。
【问题讨论】:
-
按值传递复制,与 int 无关。
-
一个对象的复制成本可能很高(例如考虑一个大向量)。通过引用传递(无论是否为 const)节省了制作副本的成本。
-
const引用用于避免不必要的对象复制。但是,我认为,对于原始数据类型,它对任何类型的性能都没有帮助。
标签: c++