有点奇怪:一位 friend 不久前告诉我,重新安排这个示例 for
循环来自:
for(int i = 0; i < constant; ++i) {
// code...
}
到:
for(int i = 0; constant > i; ++i) {
// code...
}
会略微提高 C++ 的性能。我看不出将常量值与变量进行比较比反之亦然更快,而且我运行的一些基本测试没有显示两种实现之间的速度有任何差异。测试这个 Python while
循环也是如此:
while i < constant:
# code...
i += 1
对比:
while constant > i:
# code...
i += 1
我错了吗?我的简单测试不足以确定速度变化吗?其他语言也是这样吗?或者这只是一个新的最佳实践?
最佳答案
它更像是 C++ 的民间传说,手动微优化曾经在特定编译器的特定版本上工作过,然后作为某种传说将拥有者与普通群体区分开来。太垃圾了剖析是真理。
关于c++ - 重新安排条件评估会加速循环吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/734158/