rksoftware

Visual Studio とか C# とかが好きです

C# 11 の新機能を確認「数値 IntPtr 」

C# 11 の新機能を確認しています。目次は次の記事です。
rksoftware.hatenablog.com

今回は 「 数値 IntPtr 」。公式 Learn の記事は次です。

learn.microsoft.com

nintSystem.IntPtr の、 nuintSystem.UIntPtr のそれぞれエイリアスになったようです。
もともと、nint と書けば System.IntPtr に、 nuint と書けば System.UIntPtr になっていたので使い勝手としては変わらない、のですかね?

■ 確認

次のような感じです。

Console.WriteLine(((nint)0).GetType());     // System.IntPtr
Console.WriteLine(((nuint)0).GetType());    // System.UIntPtr

※ .NET 6 でも同じ結果になります。

■ 必要な時、自然に書くと思います

この機能もあまり多くの人が使う機能ではないと思います。そして使う必要が出た際には特に迷わず書けるとも思います。必要になったら思い出しましょう。私は nint nuint が C# 9 で追加されたていたことを今思い出しました。