C# 型の既定値 (C# リファレンス)Default values of C# types (C# reference)

次の表では、C# の型の既定値を示します。The following table shows the default values of C# types:

種類Type 既定値Default value
すべての参照型Any reference type null
任意の組み込み整数数値型Any built-in integral numeric type 0 (ゼロ)0 (zero)
任意の組み込み浮動小数点数値型Any built-in floating-point numeric type 0 (ゼロ)0 (zero)
boolbool false
charchar '\0' (U+0000)'\0' (U+0000)
enumenum (E)0 によって生成される値。E は列挙型識別子です。The value produced by the expression (E)0, where E is the enum identifier.
structstruct すべての値型フィールドが既定値に設定され、すべての参照型フィールドが null に設定された値。The value produced by setting all value-type fields to their default values and all reference-type fields to null.
任意の null 許容値型Any nullable value type HasValue プロパティが false で、Value プロパティが未定義のインスタンス。An instance for which the HasValue property is false and the Value property is undefined. その規定値は、null 許容値型の "null" 値とも呼ばれます。That default value is also known as the null value of a nullable value type.

次の例に示すように、型の既定値を生成するには default 演算子を使います。Use the default operator to produce the default value of a type, as the following example shows:

int a = default(int);

C# 7.1 以降、default リテラルを使用して、その型の既定値に変数を初期化できます。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;

値の型については、次の例が示すように、暗黙的なパラメーターなしのコンストラクターによっても、型の既定値が生成されます。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)

実行時に、System.Type インスタンスが値の型を表している場合は、Activator.CreateInstance(Type) メソッドを使用して、パラメーターなしのコンストラクターを呼び出して、型の既定値を取得できます。At run time, if the System.Type instance represents a value type, you can use the Activator.CreateInstance(Type) method to invoke the parameterless constructor to obtain the default value of the type.

C# 言語仕様C# language specification

詳細については、「C# 言語仕様」の次のセクションを参照してください。For more information, see the following sections of the C# language specification:

関連項目See also