これは:
int x=0;
for (int i=0;i<100;i++)
x++;
for (int i=0;i<100;i++)
x--;
for (int i=0;i<100;i++)
x++;
return x;
これと同じ:
int x=0;
for (int i=0;i<100;i++){
x++;
x--;
x++;
}
return x;
注:これは単なる例であり、実際のループははるかに複雑になります。
では、これら2つのループは同じですか、それとも2番目のループの方が速いのでしょうか。
編集: JavaまたはC++。私は両方について疑問に思いました。
コンパイラが実際にコードを最適化することを知りませんでした。