質問

すべての論理演算子、シフト演算子、添加剤演算子、およびすべての乗数演算子に同等の割り当て演算子があります。

なぜ論理演算子が取り残されたのですか?それが難しい理由は良い技術的理由がありますか?

役に立ちましたか?

解決

なぜ論理演算子が取り残されたのですか?それが難しい理由は良い技術的理由がありますか?

彼らはしませんでした. 。できるよ &= また |= また ^= お望みならば。

bool b1 = false;
bool b2 = true;
b1 |= b2; // means b1 = b1 | b2

||&& 率直に言って、それらは少しばかげているため、オペレーターには複合形態がありません。どのような状況下で言いたいですか

b1 ||= b2;
b1 &&= b2;

左側が変わらない場合、右側が評価されないように?実際にこの機能を実際に使用するのは数人しかないようですが、なぜそれを入れるのですか?

化合物演算子の詳細については、こちらをご覧ください。

http://blogs.msdn.com/b/ericlippert/archive/2011/03/29/compound-assignment-part-one.aspx

そして、フォローアップの4月撮影の記事はこちら:

http://blogs.msdn.com/b/ericlippert/archive/2011/04/01/compound-assignment-part-two.aspx

他のヒント

たぶん使用してください

isAdmin = isAdmin || IsGroupAdmin()

部分的にだと思います a ||= b 実装には2つのバージョンがある可能性があるため、混乱しています。 a = a || b, 、 また a = b || a. 。そして、式の右側が評価されないことがあるため、それらは異なって行動します。

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top