IntPtr 與 UIntPtr 實作 IFormattable
IntPtr 與 UIntPtr 現在實作 IFormattable。 現在檢查 IFormattable 支援的語言函式可能針對這些型別傳回不同的結果,因為其可能傳遞格式規範和文化特性。
變更描述
在舊版 .NET 中,IntPtr 與 UIntPtr 不會實作 IFormattable。 檢查 IFormattable 的語言函式可能回復為只呼叫 IntPtr.ToString 或 UIntPtr.ToString,意即不遵守格式規範和文化特性。
在 .NET 5 和更新版本中,IntPtr 與 UIntPtr 會實作 IFormattable。 現在檢查 IFormattable 支援的語言函式可能針對這些型別傳回不同的結果,因為其可能傳遞格式規範和文化特性。
這項變更會影響差補字串和 Console.WriteLine 之類的情節和其他不同情節。
變更原因
現在 IntPtr 和 UIntPtr 能透過 nint
和 nuint
關鍵字在 C# 中具備語言支援。 支援型別已更新,可在其他 System.Int32 之類的基本類型公開語言函式時提供近乎同位 (如可能)。
導入的版本
5.0
建議的動作
如果您不想在顯示這些型別的值時使用格式規範或自訂文化特性,請呼叫 ToString()
的 IntPtr.ToString() 和 UIntPtr.ToString() 多載。
受影響的 API
無法透過 API 分析偵測。