c#复合赋值操作符^=
本文关键字:赋值操作符 复合 | 更新日期: 2023-09-27 17:52:48
这个运算符^=在c#中是什么意思?
表示LHS表达式的值与RHS表达式的值按位异或,并将其赋给LHS表达式
例如:
int x = 10;
int y = 3;
x ^= y; // x = 10 ^ 3, i.e. 9
LHS表达式只求值一次,所以如果有:
array[GetIndex()] ^= 10;
只调用一次GetIndex
。但请不要这样做,因为它很讨厌:)
请参阅相关的MSDN页面。
你可能还会觉得Eric Lippert最近在愚人节发表的关于复合赋值运算符的博文很有趣——而这个系列的第一部分,相当严肃,可能会给你一些启发。
this:
x ^= y;
等价于:
x = x ^ y;
也就是说,将x设置为与x不相容或与y 'ed的值。
异或赋值操作符。
形式为
的表达式 x ^= y
被计算为
x = x ^ y
,除了x只求值一次。^操作符对整型操作数执行位异或操作,对bool型操作数执行逻辑异或操作。
http://msdn.microsoft.com/en-us/library/0zbsw2z6.aspx这是"独占或赋值"操作符。详见http://msdn.microsoft.com/en-us/library/0zbsw2z6(v=VS.100).aspx
XOR。a ^= b
与a = a ^ b
相同,其中a和b是某种整数类型