sizeofがコンパイル時に決定されない場合がある

C++/CLIにおいてsizeof演算子はコンパイル時定数と決めつけてはいけません。コンパイル時に大きさを特定できる場合のみ、コンパイル時定数になることになっています。



仕様書によると、コンパイル時に決定されない例として以下の3つが挙げられています。

  • 値型のクラス
  • ハンドル型
  • ジェネリック型

なお、参照型のクラスやインタフェースに対してsizeof演算子を適用した場合の動作は未定義です。



[ECMA] – Standard ECMA-372 C++/CLI Language Specification

Leave a Reply

最初のコメントを頂けますか?

更新通知を受け取る »
avatar
wpDiscuz