この C# コードでコンパイル エラーが発生するのはなぜですか?
void test()
{
ushort a = 0;
ushort b = 0;
ushort c = a ^ b; //ERROR
}
エラー CS0266: 型 'int' を 'ushort' に暗黙的に変換することはできません。明示的な変換が存在します (キャストがありませんか?)
この C# コードでコンパイル エラーが発生するのはなぜですか?
void test()
{
ushort a = 0;
ushort b = 0;
ushort c = a ^ b; //ERROR
}
エラー CS0266: 型 'int' を 'ushort' に暗黙的に変換することはできません。明示的な変換が存在します (キャストがありませんか?)
これを見てください:2バイト変数のC#XORは、キャストなしではコンパイルされません
基本的に、ビット演算子を使用すると、intより小さいオペランドは自動的にintに変換されます。