2

単純なブールフラグを維持することにより、多くのオブジェクトが状態を保持するプロジェクトがあります。これらはたくさんあるので、私はそれらをa内に維持し、uint32_tビットマスキングを使用します。追跡するフラグが非常に多いので、それらの抽象化(をラップするクラスのみuint32_t)をset()clear()などで作成しました。

私の質問:このクラスの正確で簡潔な名前は何ですか?名前だけを知っていることが何であるかを合理的に理解できるように、このクラスにどのような名前を付けることができますか?

私が持っていたいくつかのアイデア:

  • FlagBank
  • FlagArray

何か案は?

前もって感謝します!
乾杯、-
クリス

4

2 に答える 2

10

標準にはそのようなクラステンプレートがあり、それが呼び出されstd::bitset<N>ます(ビット/フラグの数を表すN)。このクラスの実際のオブジェクトは、その目的に応じて、stateまたは何かのように名前を付けることができます。

于 2010-05-28T15:51:35.520 に答える
2

FlagBankはかなり説明的です。

しかし、私には1つの提案があります。uint32_tとビットマスキングを使用する代わりに、代わりにSTLベクトルを使用する方がCに似ていない可能性があります。これは、要素ごとに1ビットのみがストレージに使用されるブールの場合に特化したテンプレートを使用します。非常に効率的で、はるかにオブジェクト指向です。

于 2010-05-28T15:56:15.460 に答える