問題タブ [flags]
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.
visual-c++ - MSVC プロジェクトのリリース構成に推奨するフラグは何ですか?
MSVC プロジェクト用のフラグを確認していますが、次の機能に関する十分なドキュメントを入手できません。
- リンク時のコード生成 (/ltcg) を使用する
- 機能レベルのリンクを有効にする (/Gy)
- 未参照データの削除 (/OPT:REF)
- 冗長 COMDAT の削除 (/OPT:ICF)
- Windows98 向けに最適化しない (/OPT:NOWIN98)
- 文字列プーリングを有効にする (/GF)
個別のデバッグ/リリース ビルドを使用しているため、主にリリースのフラグに関心があります。これらのフラグとそれらがどのように相互に関連するかについての説明、およびあなた自身のプロジェクトでどのフラグを使用するかについての説明は大歓迎です!
php - PHPのビットフラグのベストプラクティス
私はPHP+MySQLで小さなアプリケーションを作成していて、それに関連付けられたフラグが2つ(これまでのところ8つありますが、増えるとは予想されていません)のオブジェクトが存在するようになりました。意味をなさないいくつかの組み合わせがありますが、フラグはほとんど無関係です。オブジェクトはDB内の行を表します(それを保存/ロードするためのいくつかのメソッドもあります)ので、質問はストレージメソッドの選択にも当てはまります。
問題は、コードとDBの両方でそれらを最もよく表現する方法です。私はいくつかの方法を考えることができます:
それらをDBに格納する1つの方法は、ビット単位のフラグとして単一の整数フィールドに格納することです。PHP側では、それらを表現するいくつかの方法を想像できます。
- 整数値をエクスポートして、いくつかのフラグ定数を定義するだけです。フラグが必要なすべての場所に独自のビット単位の魔法を実行させます。
- クラスメソッドを定義
GetFlag()
しSetFlag()
ますUnsetFlag()
。これは、プライベート整数変数に対してビット単位の魔法を実行します。これらのメソッドには、フラグ定数の1つがパラメーターとして渡されます。 - メソッドなどを定義
GetFlagA()
しますGetFlagB()
(対応するSetおよびUnsetとともに)。 - それぞれが1つのフラグを表す一連のメンバー変数を定義します。DBからのロード時にそれらを設定し、保存時にそれらを収集します。
- すべてのフラグ値の配列であるメンバー変数を作成します。各フラグにアクセスするための配列インデックスとして事前定義された定数を使用します。また、ロード/保存時にアレイを埋める/収集します。
もう1つの方法は、それらを個別のBITフィールドとしてDBに格納することです。PHPでは、これはいくつかのメンバー変数に変換されます。私見これはクエリを複雑にします。
そして最後の方法は、すべてのフラグに別のテーブルを定義し、フラグと元のオブジェクト間の多対多の関係に中間テーブルを定義することです。私見は、他の方法では3つのテーブルしかないことを考えると、すべてのソリューションの中で最も厄介です。
私はPHPの開発をあまり行っていないので、ベストプラクティスがどうなるかわかりません。C#では、おそらくそれらをビット単位のフラグとして格納し、プライベート整数に対してビット単位の魔法を実行するプロパティを作成します。しかし、PHPにはプロパティがありません(私は最新の安定バージョンを使用しています)...
batch-file - 新しいインスタンスを起動せずに cmd.exe /V:ON フラグを設定する
cmd /V:ON
cmd.exeの新しいインスタンスを起動せずに、cmd.exe の実行時の変数展開を有効にする方法はありますか (通常は と入力して実行します)。
同様に、他の設定/フラグをその場で変更できますか?
c# - Web サービスのフラグ
次のように、Web サービスの背後にあるフラグ属性の列挙があります。
私の問題は、Web サービスのコンシューマが列挙型の元の定数値を持っていないことです。結果として得られるプロキシ クラスのクライアント側には、次のようなものがあります。
したがって、消費者が「読み取り」アクセスをチェックしているとき、これは「testItem」が「Full」であっても false になります。
Web サービスでフラグを適切に提供するにはどうすればよいですか?
編集:
この記事によると、私が探していることを実行できない可能性があります。イヴァン・クリヴィヤコフは次のように述べています
列挙型の不完全な透明性
列挙型は、私たちが望んでいたほど透過的ではないことがわかりました。厄介な問題が 3 つあります。
- サーバー側のコードが列挙型を宣言し、特定の数値をそのメンバーに割り当てる場合、これらの値はクライアントには表示されません。
- サーバー側のコードが [Flags] 列挙型を「複合」マスク値 (白 = 赤|緑|青のように) で宣言すると、クライアント側に正しく反映されません。
- サーバーまたはクライアントが列挙型の範囲外の「不正な」値を送信すると、反対側の XML デシリアライザーで例外が発生します。
だから、これは単なる制限であり、不可能なのだろうか。
c# - Enum as Flag 使用、設定、およびシフト
私は2つのフラグを持っています:
私はそれらを次のように設定しました:
後で次のように使用します。
メジャー予約: 両方のフラグが設定される場合があります。または、1 つだけ、この場合、コードの一部のみが実行されます。
私のコードは良いですか?フラグを設定する最良の方法は何ですか?
Upd : これは最初よりも醜くありませんか?どう思いますか?
linux - Linux リンカの -lXi フラグを適切なライブラリに変換する方法は?
上記のフラグが参照しているライブラリが何であるかを知るにはどうすればよいですか? 他の人のためにどうすればいいですか?
assembly - アセンブル条件コードレジスタについて
addl命令を使用して 、C 式 "t=a+b" と同等の処理を実行するとします。ここで、a、b、t は int型の変数であり、条件コードは次の C 式に従って設定されます。
CF: (符号なし t) < (符号なし a) 符号なしオーバーフロー
ZF: (t==0) ゼロ
SF: (t<0) ネガティブ
OF: (a<0 == b<0) && (t<0 != a<0) 符号付きオーバーフロー
コンピュータシステムの教科書から引用。
- CF はキャリーフラグです。
- ZF はゼロフラグです。
- SFはサインフラグです。
- OF はオーバーフロー フラグです。
これらの C 式が上記の効果を持つ理由がわかりません。たとえば、式 (t<0) が SF フラグを設定するのはなぜですか?? t<0 は true または false のいずれかです (教科書ではこれらの変数の型しか説明されていないため)。しかし、なぜ符号フラグが設定されているのでしょうか?私は本当に混乱しています。助けてください..ありがとう!
assembly - アセンブリCF(キャリー)およびOF(オーバーフロー)フラグについて
CFは符号なし実行を示し、OFは符号付きオーバーフローを示すことが知られています。では、アセンブリプログラムはビットのシーケンスにすぎないため、符号なしデータと符号付きデータをどのように区別するのでしょうか。(タイプ情報用の追加のメモリストレージを介して、または位置情報などを介して?)そしてこれらの2つのフラグは交換可能に使用できますか?