Udostępnij za pośrednictwem


Wartości domyślne typów języka C# (referencja C#)

W poniższej tabeli przedstawiono wartości domyślne typów języka C#:

Typ Wartość domyślna
Dowolny typ odwołania null
Każdy wbudowany typ liczbowy 0 (zero)
Dowolny wbudowany typ liczb zmiennoprzecinkowych 0 (zero)
typ logiczny false
char '\0' (U+0000)
enumeracja Wartość wygenerowana przez wyrażenie (E)0, gdzie E jest identyfikatorem wyliczenia.
struktura Wartość wygenerowana przez ustawienie wszystkich pól typu wartości na wartości domyślne i wszystkie pola typu odwołania na wartość null.
Dowolny typ wartości dopuszczający null Wystąpienie, dla którego właściwość HasValue jest false, a właściwość Value jest niezdefiniowana. Ta wartość domyślna jest również znana jako wartość null typu wartości dopuszczanej do wartości null.

Wyrażenia wartości domyślnej

Użyj operatora default, aby utworzyć wartość domyślną typu, jak pokazano w poniższym przykładzie:

int a = default(int);

Aby zainicjować zmienną jej domyślną wartością typu, można użyć literału default:

int a = default;

Konstruktor bezparametrowy typu wartościowego

W przypadku typu wartości niejawny konstruktor bez parametrów generuje również wartość domyślną typu, jak pokazano w poniższym przykładzie:

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

W czasie wykonywania, jeśli wystąpienie System.Type reprezentuje typ wartości, możesz użyć metody Activator.CreateInstance(Type), aby wywołać konstruktor bez parametrów, aby uzyskać wartość domyślną typu.

Notatka

Typ struktury (który jest typem wartości) może mieć jawny konstruktor bez parametrów, który może tworzyć wartość innego typu niż domyślna. W związku z tym zalecamy użycie operatora default lub literału default w celu wygenerowania wartości domyślnej typu.

Specyfikacja języka C#

Aby uzyskać więcej informacji, zobacz następujące sekcje specyfikacji języka C#:

Zobacz też

  • Konstruktory