运营商像|=
和&=
工作作为整数和长位运算符...按位赋值运算符在C#
int a = 123;
int b = 234;
a |= b;
Console.WriteLine(a); // outputs 251
但在一个布尔值,它是一个逻辑操作:
bool a = true;
bool b = false;
a |= b;
Console.WriteLine(a); // outputs true
怎么办^=
,&=
和|=
运算符决定在应用于不同数据类型时使用哪种操作?
'但是在布尔,这是一个合乎逻辑的操作:'。嗯,是。但bools是单个位,因此按位OR与逻辑OR相同。 – Rob