だらだらやるよ。

こげつのIT技術メモ

Null許容型

値型とか構造体にNullが使用できるようになりました。
よく使うことになると思うのはint,bool,DateTimeといったところでしょうか
で、使い方

int? test1 = null;
Nullable<int> test2 = 43;

これだけ、簡単ですね:-)
「型名?」はNullable<型名>の参照らしいので、どちらでもお好みでどうぞってな具合です
あ、<型名>の記述については下のジェネリックを参照してください
もちろん普通の値型との変換も可能で、こんな感じで

int test3 = test1.HasValue ? test1.Value : -1;

また、値方に限らないのですが、nullの判定をするときにこんな感じで書けます
HasValueプロパティでnullかどうかの判定ができるのでらくちんですね!
で、新しい構文により、以下のような記述もできるようになりました

int test3 = test1.HasValue ?? -1;

これはだいぶすっきりしていい感じ:-)