【发布时间】:2012-04-03 19:13:07
【问题描述】:
我更喜欢在我编写的函数的所有内置参数中添加const 修饰符。例如:
void foo(const int arg1, const double arg2);
对我来说比:
void foo(int arg1, double arg2);
在代码审查后,我被告知 const 修饰符在应用于整数和内置类型时会带来开销。这是真的吗?为什么?
谢谢,
【问题讨论】:
-
它带来了 5 个字符的开销,
c、o、n、s和t,我猜。 -
是时候更新您的简历并寻找一份可以与有线索的人一起工作的工作了
-
不,这是一个可怕的6!还有一个空间
-
@DavidHeffernan:那为什么还有 hvae const 限定符呢?我们通过值传递的任何方式,如果它打算让函数修改该值。
-
@JamesKanze: 在重构那些 a-little-too-complicated 函数时,我做的第一件事就是尽可能多地
const本地变量,然后我可以放他们(变量)不在我的脑海中。并非您在野外接触到的所有代码都如您所愿。