c#初始化

mfc*_*mfc 4 c# initialization

是否有必要初始化汽车财产?

public string thingy { get; set; }
Run Code Online (Sandbox Code Playgroud)

我问的原因是因为我刚遇到一堆代码,其中使用了null,默认值为null是可接受的值.

编译器没有抱怨.

作为一般意义,为什么编译器会强制执行初始化,如果它将默认数字设置为零并且对象引用仍然为null?

bur*_*ION 5

autopropeties初始化default(T)如果要按特殊值初始化,可以使用支持字段:

private string _thingy = "value";
public string Thingy
{
    get { return _thingy; }
    set { _thingy = value; }
}
Run Code Online (Sandbox Code Playgroud)

或者在构造函数中设置值

public class MyClass
{
    public string Thingy{get;set;}
    public MyClass()
    {
        Thingy = "value";
    }
}
Run Code Online (Sandbox Code Playgroud)

或以任何方法设置