c#是否使& =和| =运算符短路

时间:2014-10-07 09:40:52

标签: c# operators short-circuiting

我知道&&运算符和||运算符在c#中是短路的。 但&=运算符和|=运算符也是如此? 假设我有一个声明:

bool a = doSomething();
a &= doNext();

这保证等同于:

bool a = doSomething();
if(!a)
  a = doNext();

2 个答案:

答案 0 :(得分:0)

我想这实际上相当于:

a = a & doNext()

Google进行按位操作以查看更多信息。

答案 1 :(得分:0)

是的http://msdn.microsoft.com/en-us/library/e669ax02.aspx并且它不等于&&。它是&的简短版本。运营商加分配。 doNext方法将被调用并执行任何" a"值。