【发布时间】:2020-02-06 22:12:09
【问题描述】:
在使用 .Net 的 c# 中,如果您创建一个具有未初始化字段且没有构造函数的类,则使用 new 关键字创建该类的实例,.Net 将该字段的值设置为“默认值”。这到底是什么意思呢?是否存在将值设置为 Null 的情况?
【问题讨论】:
-
"是否存在将值设置为 Null 的情况?"是的。引用类型将默认为 null。
-
基本上默认为0,根据类型表示不同的东西。对于 null 的引用,对于值类型,它是任何值映射到所有设置为 0 的位的等价物。所以对于数字类型,它是 0 或布尔值,它是 false。
-
default(whateverType),具体来说。正如 juharr 所说,对于任何引用类型,这将是null,对于任何数字类型,0的适当值,对于bool,false,等等。 -
.Net 用
0填充为类实例分配的内存。所以它将是null、0、0.0、false等。
标签: c# .net class default-constructor