我注意到byte在C#中对s 使用按位XOR运算符有些奇怪.至少对我来说很奇怪.
byte a = 0x11;
byte b = 0xAA;
a ^= b; // works
a = a ^ b; // compiler error: Cannot implicitly convert type "int" to "byte"
Run Code Online (Sandbox Code Playgroud)
我也看到这个问题使用short,但不是int或long.
我认为最后两行是等价的,但似乎并非如此.这里发生了什么?
| 归档时间: |
|
| 查看次数: |
622 次 |
| 最近记录: |