【发布时间】:2017-07-05 14:25:05
【问题描述】:
我知道有很多关于使用前增量(减量)与使用后的性能提升的问题。而且据我推测,大部分 C/C++ 编译器都会改变
for (int i =0; i<N; i++)
{
...
}
以下作为优化
for (int i =0; i<N; ++i)
{
...
}
我最近做了很多代码审查,我发现很多我可以将 i++ 更改为 ++i 的实例。问题是只修复良好的形式,或者在某些情况下它可以对性能产生影响?
意思是我通常使用的编译器:gcc 和 Visual C++ 会自动进行这种优化吗?也欢迎提供有关其他常用编译的信息。
【问题讨论】:
-
我认为即使是编译器也会有一个更一致、更好看的风格。此外,只需使用不同的优化选项从您的源代码生成程序集,然后自己检查。没那么难。
-
请注意,
while (myTestVal < x++)的含义不同于while (myTestVal < ++x) -
好点我会解决我的问题
标签: c++ c visual-c++