読者です 読者をやめる 読者になる 読者になる

Nullable 2005 (1)

.NET

米国時間2005年8月1日に解禁になった C# 2.0 及び CLR 2.0 における Nullable の仕様変更について.mei さんも紹介されていますが(id:akiramei:20050802:p1),Nullable の boxing に絡んで変更が行われたそうです.
実行例を以下に示します.ただし仕様変更後の動作環境は手元に存在しないため,結果については想像で書いています.ご注意ください.
>

using System;

class Program
{
static void Main(string[] args)
{
int? n = 10;
object o = n;

Console.WriteLine(n.GetType());
Console.WriteLine(o.GetType());

Console.WriteLine(o is int);
Console.WriteLine(o is int?);
}
}

/* Beta2 での表示結果
System.Nullable`1[System.Int32]
System.Nullable`1[System.Int32]

False
True
*/

/* 変更後に表示されるであろう結果
System.Nullable`1[System.Int32]
System.Int32

True
True
*/