8

重複の可能性:
Null 許容型は Null 許容型ではありませんか?
GetType が Nullable<Int32> ではなく System.Int32 を返すのはなぜですか?

((int?) 1).GetType()が返されると思っtypeof(int?)ていましたが、返されることがわかりましたtypeof(int):

bool a = ((int?)1).GetType() == typeof(int?); // a is false
bool b = ((int?)1).GetType() == typeof(int); // b is true

それでも、 などのコード((int?) 1).HasValueは問題なくコンパイルおよび実行されます。

intをキャストしてをint?返すのはなぜintですか?

1これは、定数 ( ) を変数に置き換えた場合にも当てはまることに注意してくださいint

4

0 に答える 0