重複の可能性:
C# は値の型を null と比較しても問題ありません
null
C# で null 非許容型に代入しようとすると、次のようになります。
System.DateTime time = null;
コンパイル時エラーが発生します。
エラー CS0037: Null 非許容型であるため、null を 'System.DateTime' に変換できません
これは理にかなっています。しかし、同じタイプを と比較するとnull
:
System.DateTime time = obtainFromSomewhere();
if( time == null ) {
//whatever;
}
コンパイル時エラーはありません。これは私には意味がありません。割り当てることができない場合null
、なぜそうなるのnull
ですか?
null 非許容型を と比較できるのはなぜnull
ですか?