問題タブ [bit]

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.

0 投票する
9 に答える
40018 参照

c# - 可能なすべての組み合わせを宣言せずに (Flags 属性を使用して) Enum をオンにしますか?

flags 属性が設定されている (より正確にはビット操作に使用される) 列挙型をオンにするにはどうすればよいですか?

宣言された値に一致するスイッチですべてのケースをヒットできるようにしたい。

問題は、次の列挙型がある場合

このようなスイッチを使いたい

「theCheckType」が両方の CheckType.Form に設定されている場合 | CheckType.TempData 両方のケースにヒットさせたい。明らかに、ブレークのために私の例では両方にヒットしませんが、CheckType.Form が CheckType.Form | と等しくないため、それ以外にも失敗します。CheckType.TempData

私が見ることができる唯一の解決策は、列挙値の可能なすべての組み合わせのケースを作成することですか?

何かのようなもの

しかし、それは実際にはあまり望まれていません (すぐに非常に大きくなるからです)。

現在、代わりにお互いの直後に 3 つの If 条件があります

何かのようなもの

しかし、それはまた、20個の値を持つ列挙型がある場合、スイッチを使用するときのように必要な「ケース」/にのみ「ジャンプ」するのではなく、毎回20個のIf条件を通過する必要があることも意味します。

この問題を解決するための魔法の解決策はありますか?

宣言された値をループしてからスイッチを使用する可能性を考えましたが、宣言された各値に対してのみスイッチをヒットしますが、それがどのように機能するかはわかりません。多くの場合と比較して)?

宣言されたすべての列挙値をループする簡単な方法はありますか?

ToString() を使用して "," で分割し、配列をループしてすべての文字列を解析することしか考えられません。


アップデート:

十分な説明ができていないことがわかりました。私の例は単純です(私のシナリオを単純化しようとしました)。

Asp.net MVC の ActionMethodSelectorAttribute に使用して、URL/ルートを解決するときにメソッドを使用できるかどうかを判断します。

メソッドでこのようなことを宣言することでそれを行います

これは、Form または TempData がメソッドを使用できるように指定されたキーを持っているかどうかを確認する必要があることを意味します。

呼び出すメソッド (前の例では doSomething()、doSomethingElse()、および doWhatever()) は、実際には戻り値として bool を持ち、パラメーター (使用できるインターフェイスを共有しない異なるコレクション) で呼び出されます。使用 - 以下のリンクにあるサンプル コードを参照してください)。

うまくいけば、私が何をしているのかをよりよく理解するために、私が実際に行っていることの簡単な例をペーストビンに貼り付けました - ここで見つけることができますhttp://pastebin.com/m478cc2b8

0 投票する
8 に答える
23100 参照

sql - SQLクエリ-true=>true、false=>trueまたはfalse

単純なクエリ、おそらく不可能ですが、私はそこにいくつかの賢い人々がいることを知っています:)

ブールパラメータが与えられた場合、特定の列の出力を制限するか、何もしないようにwhere句を定義したいと思います。

したがって、パラメータ@bit = 1が与えられると、これは結果になります。

ここで、column = 1

パラメータ@bit=0が与えられると、これは結果になります。

ここで、column=1または0

つまり、効果がない/すべての結果を表示する(列はビットフィールドです)

私は動的SQLを望んでいません-これをコードで修正することで解決できますが、上記をきちんとシンプルにする巧妙な魔法があるかどうか疑問に思いました。

ある?私はSQLサーバーを使用しています。

乾杯:D

0 投票する
6 に答える
348 参照

c - このコード行は何をしますか?

このコードが何をするかについて混乱している

特に、この " N_half>>=1 "

ありがとう

0 投票する
8 に答える
112277 参照

sql - SQL Server で定数 1 または 0 を使用してビットを暗黙指定する

selectステートメントでフィールド値として使用する場合、1または0をビットとして表現することはできますか?

例えば

この case ステートメント (select ステートメントの一部) では、ICourseBased は int 型です。

ビット型にするには、両方の値をキャストする必要があります。

毎回キャストすることなく、値をビット型として表現する簡単な方法はありますか?

(MS SQL Server 2005 を使用しています)

0 投票する
5 に答える
275 参照

arrays - ビットの効率的なコンテナ

一部の部分では非常に密になり、他の部分では非常にまばらになる可能性のあるビット配列があります。配列は 2**32 ビットまで大きくなる可能性があります。メモリ内でより効率的に処理できるように、オフセットと長さを含む一連のタプルに変換しています。ただし、これは10101010100011のようなものでは効率が悪い場合があります。これをメモリに保存する良い方法はありますか?

0 投票する
3 に答える
2229 参照

c# - バイトの配列で単一のビットを読み取る方法は?

問題は、200個のインデックスを持つバイトの配列があり、MyArray [75]の4番目のビットがZero(0)またはOne(1)であることを確認したいということです。

0 投票する
2 に答える
2270 参照

sql-server - ビット列でグループ化できません

SQL Server 2005 では、クエリ ビルダーで [グループの追加] を選択して、選択したすべてのフィールドに group by 句を自動的に追加します。これらのフィールドの 1 つ以上がビット型である場合、エラーが発生します。どうしてこれなの?列を TINYINT にキャストすることは良い修正ですか?

0 投票する
2 に答える
5417 参照

c++ - バイト配列へのビットの読み取りと書き込みの方法

unsigned charバッファがあり、このバイトバッファに符号付きビットと符号なしビットをどのように読み書きするのか疑問に思っています。

ソースエンジンにはbf_writeという名前のクラスがあり、2つの主要なメソッド(WriteString、WriteChar、WriteLongなどで使用)はWriteUBitLongWriteSBitLongという名前の2つの関数を使用します。

前もって感謝します

0 投票する
7 に答える
8770 参照

c - C - int の「n」個の最下位ビットを比較して等しいかどうかを比較する必要がある

nC - int の最下位ビットが等しいかどうかを比較する必要があります。

つまり、n = 4;

xxxx1001 == xxxx1001 (x はどうでもよい)

つまり、n = 2; xxxxxx01 == xxxxxx01

マスクを使わずにそれを行う良い方法は考えられません、=)。

0 投票する
2 に答える
1621 参照

ruby - rubyでioctlを介してessidを取得する

ワイヤレスツールに依存することを避けるために、ioctlを使用してデバイスから直接essidを取得したいのですが、Cではこれは問題になりませんが、Rubyではまったく異なります。

問題は、ioctlの入力/応答として使用されるwireless.hからの構造体に従うことです。

ポインタ部分は、メモリ領域の有効なアドレス、バイト単位の長さ、フラグフィールドの順である必要があります。Array#packとbit-struct gemを試してみましたが、まだ解決策が見つかりません。

このメモリポインタの問題を回避する方法はありますか?