既定値の一覧表 (C# リファレンス)Default values table (C# Reference)

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

値の種類Value type 既定値Default value
boolbool false
bytebyte 00
charchar '\0''\0'
decimaldecimal 0M0M
doubledouble 0.0D0.0D
enumenum (E)0 によって生成される値。E は列挙型識別子です。The value produced by the expression (E)0, where E is the enum identifier.
floatfloat 0.0F0.0F
intint 00
longlong 0L0L
sbytesbyte 00
shortshort 00
structstruct すべての値型フィールドが既定値に設定され、すべての参照型フィールドが null に設定された値。The value produced by setting all value-type fields to their default values and all reference-type fields to null.
uintuint 00
ulongulong 00
ushortushort 00

解説Remarks

C# で初期化されていない変数を使用することはできません。You cannot use uninitialized variables in C#. 変数はその型の既定値に初期化することができます。You can initialize a variable with the default value of its type. また、型の既定値を使用して、メソッドの省略可能な引数の既定値を指定することもできます。You also can use the default value of a type to specify the default value of a method's optional argument.

既定の値式を使用して、次の例に示すように、型の既定値を生成します。Use the default value expression 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;

また、次の例に示すように、パラメーターなしのコンストラクターまたは暗黙的なパラメーターなしのコンストラクターを使用して、値型の既定値を生成することもできます。You also can use the parameterless constructor or the implicit parameterless constructor to produce the default value of a value type, as the following example shows. コンストラクターの詳細については、コンストラクターに関する記事を参照してください。For more information about constructors, see the Constructors article.

int a = new int();

参照型の既定値は null です。The default value of any reference type is null. null 許容型の既定値は、HasValue プロパティが false で、Value プロパティが未定義のインスタンスです。The default value of a nullable type is an instance for which the HasValue property is false and the Value property is undefined.

関連項目See also