Typy IntPtr a UIntPtr implementují rozhraní IFormattable
IntPtr a UIntPtr nyní implementovat IFormattable. Funkce, které kontrolují IFormattable podporu, teď můžou vracet různé výsledky pro tyto typy, protože mohou předat specifikátor formátu a jazykovou verzi.
Změna popisu
V předchozích verzích rozhraní .NET IntPtr a UIntPtr neimplementujte IFormattable. Funkce, které kontrolují IFormattable , se můžou vrátit k volání IntPtr.ToString nebo UIntPtr.ToString, což znamená, že specifikátory formátu a jazykové verze nejsou respektovány.
V .NET 5 a novějších verzích IntPtr a UIntPtr implementujte IFormattable. Funkce, které kontrolují IFormattable podporu, teď můžou vracet různé výsledky pro tyto typy, protože mohou předat specifikátor formátu a jazykovou verzi.
Tato změna má vliv na scénáře, jako jsou interpolované řetězce a Console.WriteLinemimo jiné.
Důvod změny
IntPtr a UIntPtr teď mají jazykovou podporu v jazyce C# prostřednictvím nint
klíčových slov a nuint
klíčových slov. Záložní typy byly aktualizovány tak, aby poskytovaly téměř paritu (kde je to možné) s funkcemi vystavenými jinými primitivními typy, například System.Int32.
Zavedená verze
5,0
Doporučená akce
Pokud nechcete, aby se při zobrazení hodnot těchto typů použil specifikátor formátu nebo vlastní jazyková verze, můžete volat IntPtr.ToString() a UIntPtr.ToString() přetížit ToString()
.
Ovlivněná rozhraní API
Nedetekovatelné prostřednictvím analýzy rozhraní API.