C# 有构造器。
构造器负责类中成员变量(域)的初始化。C#的类有两种构造器:实例构造器和静态构造器。实例构造器负责初始化类中的实例变量,它只有在用户用new关键字为对象分配内存时才被调用。而且作为引用类型的类,其实例化后的对象必然是分配在托管堆(Managed Heap)上。这里的托管的意思是指该内存受.NET的CLR运行时管理。
[摘]

解决方案 »

  1.   

    根据C#语言规范(http://msdn.microsoft.com/zh-cn/library/aa645756%28v=vs.71%29.aspx):
    字段(无论是静态字段还是实例字段)的初始值都是字段的类型的默认值(第 5.2 节)...同样根据C#语言规范(http://msdn.microsoft.com/zh-cn/library/aa691170%28v=vs.71%29.aspx):
    ...局部变量不自动初始化,因此没有默认值...因此,你的第3点是对的。
      

  2.   

    1.没听说过
    2.与工程无关
    3.The C# compiler defines a default (parameterless) constructor if you define a class without expliciting any constructor. And any fields that the constructor doesn't explicitly overwrite are guaranteed to have a value of 0 or null