【发布时间】:2011-06-21 17:30:37
【问题描述】:
在他的书中Effective C++Scott Meyers 提出了一个有趣的指导方针,
第 26 条:尽可能推迟变量定义。它增加了程序的清晰度并提高了程序的效率。
他提出的支持上述观点的论点是,每当创建或销毁变量时,我们都会为变量的构造和销毁产生一些成本。
我们可能有多个控制流,其中我们可能从函数返回而不使用早期定义的变量(在函数的开头),因此可能会不必要地产生创建未使用变量的成本。
这一切似乎都是合乎逻辑的,而且确实是一种很好的做法。来自c 背景,我倾向于在功能块的开头声明所有变量。也许它只是c 背景,但我也觉得将所有声明放在一个函数中的一个位置提供了简单和更好的可读性。
所以问题是你们中有多少人在日常编程中真正遵循了这种做法,或者尝试遵循这种做法只是一种矫枉过正。
【问题讨论】:
标签: c++ performance