• ベストアンサー

自動変数の破棄順についての質問です。

自動変数の破棄順についての質問です。 あるオブジェクトをクラスのメンバとして記述した場合は コンストラクタでの呼び出し順の逆が保証されるようですが、 自動変数の場合はどのような規約になっているのでしょうか? てっきりメンバ変数と同じく生成順の逆が保証されていると思ったのですがどうも違っているようです。 # JISの規格書も見てみたのですが自動変数についての破棄順についての記載を見つけられませんでした。

質問者が選んだベストアンサー

  • ベストアンサー
回答No.2

私が持っているのはINCITS/ISO/IEC 14882:2003なのですが,JIS X3014は一致規格のはずなので,あまり気にせず書いてしまいます。 6.6 Jump statementsの第2段落の後段に逆順であることが書かれています。 > Transfer out of a loop, out of a block, or back past an initialized variable > with automatic storage duration involves the destruction of variables with automatic storage duration that > are in scope at the point transferred from but not at the point transferred to. (See 6.7 for transfers into > blocks). JIS X 3014でも6.6にこの内容の文があるのではないでしょうか。

emuesuenu
質問者

お礼

JISの規格書を見直したら6.6の項に条文がありました。 どうもありがとうございました。

その他の回答 (1)

  • asuncion
  • ベストアンサー率33% (2127/6290)
回答No.1

自動変数の破棄順なるものが問題となるようなケースが思いつきません。 どういった問題に遭遇していて、その破棄順でお困りなのでしょうか。 # どんな順番で破棄しようが、どーでもいい話じゃないのかな?

関連するQ&A