Condividi tramite


IntPtr e UIntPtr implementano IFormattable

IntPtr e UIntPtr ora implementano IFormattable. Le funzioni che controllano il supporto IFormattable ora possono restituire risultati diversi per questi tipi, perché possono passare un identificatore di formato e impostazioni cultura.

Descrizione delle modifiche

Nelle versioni precedenti di .NET IntPtr e UIntPtr non implementano IFormattable. Le funzioni che controllano IFormattable possono eseguire il fallback alla semplice chiamata di IntPtr.ToString o UIntPtr.ToString, il che significa che gli identificatori di formato e le impostazioni cultura non vengono rispettati.

In .NET 5 e versioni successive, IntPtr e UIntPtr implementano IFormattable. Le funzioni che controllano il supporto IFormattable ora possono restituire risultati diversi per questi tipi, perché possono passare un identificatore di formato e impostazioni cultura.

Questa modifica influisce su scenari come stringhe interpolate e Console.WriteLine, tra gli altri.

Motivo della modifica

IntPtr e UIntPtr ora dispongono del supporto del linguaggio in C# tramite le parole chiave nint e nuint. I tipi di supporto sono stati aggiornati per fornire una quasi totale parità (laddove possibile) con funzionalità esposte da altri tipi primitivi, ad esempio System.Int32.

Versione introdotta

5.0

Se non desideri utilizzare un identificatore di formato o impostazioni cultura personalizzate durante la visualizzazione dei valori di questi tipi, puoi chiamare gli overload IntPtr.ToString() e UIntPtr.ToString() di ToString().

API interessate

Non rilevabile tramite analisi dell'API.