像 |=
和 &=
这样的运算符在 ints 和 longs 上作为位运算符起作用...
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
当使用^=
、&=
和|=
操作符作用于不同的数据类型时,它们如何决定使用哪种操作方式?