MiscUtil Operators をしばらく使用していますが、大きな問題はありません。しかし今、私は本当に私を悩ませているものを見つけました:
byte first = 13;
byte second = 29;
byte result = MiscUtil.Operator.Add(first, second);
この方程式の単純な期待される結果は次のようになるはずですresult == 42
が、残念ながらこれは次の結果をスローしInvalidOperationException
ます。
The binary operator Add is not defined for the types 'System.Byte' and 'System.Byte'.
この奇妙な動作を詳しく見てみると、System.Byte
実際にはこれらの演算子が実装されていないことがわかります。C# 内では、これらの型は暗黙的にInt32
and に変換され、これらの演算子を実装します。
そこで問題は、MiscUtil をbyte
andで動作させる機会はありsbyte
ますか?