問題タブ [bitflags]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
c++ - 列挙型はビットフラグを実装する標準的な方法ですか?
現在、小さなゲーム実験で状態を表すために列挙型を使用しています。私はそれらを次のように宣言します:
このように使用できるように:
しかし、これがビットフラグを実装する正しい方法かどうか疑問に思っています。ビットフラグ用の特別なコンテナはありませんか? について聞いたことstd::bitset
がありますが、これを使用する必要がありますか? より効率的なものを知っていますか?
私はそれを正しくやっていますか?
列挙型の基本演算子をオーバーロードしていたことを指摘するのを忘れていました。
に C スタイルのキャストを使用する必要がありましたが、|=
a では機能しませんでしたstatic_cast
。
c# - ORed フラグから値を取得する方法
CreateFileAを扱っていると仮定します
私は持っている
したがって、読み書きが必要な場合は私が行うことを意味します
どのフラグが含まれているかを知るために、API はその OR 操作をどのように逆にするのでしょうか? 言い換えれば、「0C0000000h」という値を取得したと仮定し、それに含まれるアクセスを知る必要があります。この番号に対してどのような操作を行う必要がありますか?
私の要点は、約 100 個のフラグがあり、それらを ORed/ANDed すると、複雑な数値になってしまうということです。その数値を構成するために使用されたフラグを取得するにはどうすればよいでしょうか?
php - PHP ビット フラグの処理
インスタンスをテーブル行に出力するメソッドを持つ PHP クラスがあります。先頭に名前を付けずに行を印刷したい場合もあれば、すべての行項目を印刷したい場合もあります。
コードを読みやすくするためにビット フラグを使用することにしましたが、フラグの扱いがひどいようです。ビット フラグを使用するのはこれが初めてです。
クラスの先頭で次のようにフラグを定義しました。
フラグを使用する関数は次のようになります。
ご覧のとおり、BAT_TABLE_ROW_ALL
が設定されている場合、すべてのオプションが計画どおりに実行されます。
問題は、何らかの理由で別のフラグを追加する場合 (したがって、それを 8 に設定し、ALL を 15 に設定する - 現状では些細なことですが)、関数全体を書き直さなければならないことです。これは正しくありません。
上記の関数を記述するためのより良い方法はありますか?フラグ定義を更新してから、関数に追加のフラグ実行を追加するだけです?
c# - 列挙型で FlagsAttribute を使用できない (シンボル 'HasFlag' を解決できません)
私は c# で asmx Web サービスを使用しており、最近FlagsAttribute
列挙型に非常に役立つことを発見しました。私の宣言は次のとおりです。
次に、次のように列挙型をテストします。
ただし、HasFlag
最後の行の一部が赤く強調表示されていますシンボル 'HasFlag'を解決できず、コードがコンパイルされません。理由はありますか?