1

次のような操作を考えてみましょう:

int a = f1(mystream)*f2(mystream)+f3(mystream);

ここで、f1、f2、f3 は次の形式です。

int f(std::istream&)

また

int f(std::ostream&)

がその順序で実行されるという保証はf1ありf2ますか?f3

4

3 に答える 3

4

いいえ。個々の部分式は相互に順序付けされていません。保証されているのは、1 つの関数呼び出しが別の関数呼び出しの前に完了することですが、3 つの関数呼び出しの順序は不定です。

于 2013-05-14T20:53:20.647 に答える