C# 类型的默认值

您所在的位置:网站首页 类变量有默认值吗 C# 类型的默认值

C# 类型的默认值

2024-05-21 04:13| 来源: 网络整理| 查看: 265

C# 类型的默认值(C# 参考) 项目 04/07/2023

下表显示 C# 类型的默认值:

类型 默认值 任何引用类型 null 任何内置整数数值类型 0(零) 任何内置浮点型数值类型 0(零) bool false char '\0' (U + 0000) enum 表达式 (E)0 生成的值,其中 E 是枚举标识符。 struct 通过如下设置生成的值:将所有值类型的字段设置为其默认值,将所有引用类型的字段设置为 null。 任何可以为 null 的值类型 HasValue 属性为 false 且 Value 属性未定义的实例。 该默认值也称为可以为 null 的值类型的“null” 值。 默认值表达式

使用 default 运算符生成默认类型值,如下面的示例所示:

int a = default(int);

可使用default 文本来初始化变量,使其具有其类型的默认值:

int a = default; 值类型的无参数构造函数

对于值类型,隐式无参数构造函数还可生成类型的默认值,如以下示例所示:

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

在运行时,如果 System.Type 实例表示一个值类型,则可以使用 Activator.CreateInstance(Type) 方法来调用无参数构造函数,以获取该类型的默认值。

注意

在 C# 10 及更高版本中,结构类型(一种值类型)可能具有一个显式无参数构造函数,该构造函数可能会生成该类型的非默认值。 因此,建议使用 default 运算符或 default 字面量来生成类型的默认值。

C# 语言规范

有关更多信息,请参阅 C# 语言规范的以下部分:

默认值 默认构造函数 C# 10 - 无参数结构构造函数 C# 11 - 自动默认结构 另请参阅 构造函数


【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3