C++相談室 part120 [転載禁止]©5ch.io
■ このスレッドは過去ログ倉庫に格納されています
0255デフォルトの名無しさん
2015/10/31(土) 02:43:19.73ID:xh8OJ8ETint a = foo(x);
int b = bar(y);
int c = baz(a);
という呼び出しはbar()とbaz()の呼び出し順序が変わり得るが
(今のコンパイラがやらないのは>>252に書いたとおりだが、bar()とbaz()の間に順序依存の副作用が無いなら入れ替えてもアルゴリズムの等価性を変えない)、
int a = foo(x);
volatile int b = bar(y);
volatile int c = baz(a);
ならbへの代入とcへの代入の入れ替えは許されないからbar()とbaz()の呼び出しの入れ替わりも無くなる
>>254
volatileの仕様を正しく考えたことが無い人
■ このスレッドは過去ログ倉庫に格納されています