我正在设置按钮的可见性,我有像
这样的代码 btnReset.Visible |= newCondition();
我注意到|=
未被短路,||=
不存在。当然,我可以将声明重写为
btnReset.Visible = btnReset.Visible || newCondition();
但我只是好奇是否有短手短路操作员?
以下是验证|=
不是短路的测试代码
static void Main(string[] args)
{
bool firstValue = true;
// Short Circuit
bool secondValue = firstValue || CallThisFunction();
// Full Evaluation
bool thirdValue = firstValue | CallThisFunction();
// Full Evaluation
secondValue |= CallThisFunction();
}
private static bool CallThisFunction()
{
return true;
}