IntPtr 和 UIntPtr 实现 IFormattable

IntPtrUIntPtr 现在实现 IFormattable。 检查 IFormattable 支持的功能现在可能返回这些类型的不同结果,因为它们可能以格式说明符和区域性的形式传递。

更改描述

在早期版本的 .NET 中,IntPtrUIntPtr 不实现 IFormattable。 检查 IFormattable 的函数可回退到仅调用 IntPtr.ToStringUIntPtr.ToString,这意味着不会遵循格式说明符和区域性。

在 .NET 5 及更高版本中,IntPtrUIntPtr 实现 IFormattable。 检查 IFormattable 支持的功能现在可能返回这些类型的不同结果,因为它们可能以格式说明符和区域性的形式传递。

此更改会影响内插字符串和 Console.WriteLine 等方案。

更改原因

IntPtrUIntPtr 现在通过 nintnuint 关键字获得 C# 语言支持。 更新了后备类型,以通过其他基元类型(例如 System.Int32)公开的功能提供接近奇偶校验(如果可能)。

引入的版本

5.0

如果不希望在显示这些类型的值时使用格式说明符或自定义区域性,则可以调用 ToString()IntPtr.ToString()UIntPtr.ToString() 重载。

受影响的 API

无法通过 API 分析检测到。