代码之家  ›  专栏  ›  技术社区  ›  Lea Cohen mark winkle

初始化字段默认值是冗余的

c#
  •  13
  • Lea Cohen mark winkle  · 技术社区  · 16 年前

    我真的可以信任.NET来初始化字段(如int、structs等)吗?如果我仍然想初始化这些字段,会有什么影响?

    2 回复  |  直到 9 年前
        1
  •  18
  •   tamberg    6 年前

    这个 C# specification

    字段的初始值(无论是静态字段还是实例字段)是 字段的类型。在默认初始化发生之前,无法观察字段的值, 因此,字段永远不会未初始化。

        2
  •  12
  •   Jon Skeet    16 年前

    明确地这样做基本上没有影响。(这里有一个小警告:如果显式初始化静态字段,那么任何通过反射再次运行类型初始值设定项的人都将重新初始化这些字段。不过,这是一个真正的极端情况!)

    尽可能提高特定代码库的可读性。