Tabella dei valori predefiniti (Informazioni di riferimento per C#)Default values table (C# reference)

La tabella seguente mostra i valori predefiniti dei tipi C#:The following table shows the default values of C# types:

DigitareType Valore predefinitoDefault value
Qualsiasi tipo riferimentoAny reference type null
Qualsiasi tipo numerico integrale incorporatoAny built-in integral numeric type 0 (zero)0 (zero)
Qualsiasi tipo numerico a virgola mobile incorporatoAny built-in floating-point numeric type 0 (zero)0 (zero)
boolbool false
charchar '\0' (U+0000)'\0' (U+0000)
enumenum Valore prodotto dall'espressione (E)0, dove E è l'identificatore di enumerazione.The value produced by the expression (E)0, where E is the enum identifier.
structstruct Valore prodotto impostando tutti i campi dei tipi valore sui rispettivi valori predefiniti e tutti i campi dei tipi riferimento su null.The value produced by setting all value-type fields to their default values and all reference-type fields to null.
Qualsiasi tipo valore nullableAny nullable value type Un'istanza per la quale la proprietà HasValue è false e la proprietà Value non è definita.An instance for which the HasValue property is false and the Value property is undefined. Il valore predefinito è noto anche come valore null di un tipo di valore Nullable.That default value is also known as the null value of a nullable value type.

Usare l'operatore predefinito per produrre il valore predefinito di un tipo, come illustrato nell'esempio seguente:Use the default operator to produce the default value of a type, as the following example shows:

int a = default(int);

A partire da C# 7.1 è possibile usare il valore letterale default per inizializzare una variabile con il valore predefinito del relativo tipo:Beginning with C# 7.1, you can use the default literal to initialize a variable with the default value of its type:

int a = default;

Per un tipo valore, anche il costruttore senza parametri implicito produce il valore predefinito del tipo, come mostrato nell'esempio seguente:For a value type, the implicit parameterless constructor also produces the default value of the type, as the following example shows:

var n = new System.Numerics.Complex();
Console.WriteLine(n);  // output: (0, 0)

Specifiche del linguaggio C#C# language specification

Per altre informazioni, vedere le sezioni seguenti delle specifiche del linguaggio C#:For more information, see the following sections of the C# language specification:

Vedere ancheSee also