16
バイト+バイト= int…なぜですか?
このC#コードを見てください。 byte x = 1; byte y = 2; byte z = x + y; // ERROR: Cannot implicitly convert type 'int' to 'byte' byte(またはshort)型に対して実行されたすべての数学の結果は、暗黙的に整数にキャストバックされます。解決策は、結果を明示的にバイトにキャストバックすることです。 byte z = (byte)(x + y); // this works なぜだと思いますか?建築ですか?哲学的? 我々は持っています: int+ int=int long+ long=long float+ float=float double+ double=double では、なぜそうしないのか: byte+ byte=byte short+ short= short? …
365
c#
type-conversion