1

次のコードでグループ化されたビットを実装するか、bitarray 実装を使用してこれを実現する必要があります。

例: ビット logout,Idle は、「close」というグループに属している必要があります。ビット logout または Idle のいずれかが 1 の場合、close ビットを 1 として読み取ることができるはずです。

要するに、親子関係を次のようなビットとして表す必要があるフラグの階層があります。

近い
 ログアウト
 スイッチ
 冬眠する

開いた
 電源オン
 始める

走る

操作する

親フラグはその子のビットごとの OR であるため、すべての子フラグのみが格納され、仮想親フラグを設定するとすべての子が設定されます。理想的には、 bitarray実装を使用してこれを実現したいと考えています。

私が欲しいもの:

print flags.close
flags.close=1 ## this would set all the children flags to 1
print flags
print logout

これは、bitarray クラスから継承することで実現できると思います。

4

0 に答える 0