1

メンバーを含むクラスがありenum、そのメンバーがデータで初期化されていない場合。

何らかの値が配置されているかどうかを確認したい (すべてのメンバーが初期化されていることを検証するためにクラスに対して作成している一種の検証メカニズム)、メンバーを何と比較できenumますか? NULL? または、0を受け取ります(0は最初のフィールドのようなものなので、誰にとっても良くありません..)

4

1 に答える 1

4

初期化されていない変数を何かと比較することはできません。それを読み取る動作は未定義であるためです。

したがって、最も安全な方法は、UNSET状態を の一部として保持enumし、この状態に初期化して、それと比較することです。

于 2012-10-23T13:22:01.480 に答える