为什么{get; set;}访问器没有初始值(VS 2010 C#)

Pau*_*ous 4 c# default properties

这肯定已被多次询问,但我找不到....抱歉......

为什么不允许以下内容?

public string MyString ="initial value"{get; 私人集;}

(Visual C#Express 2010)

Mis*_*mbu 5

这只是无效的语法.遗憾的是,您无法初始化自动属性的值.

最好的选择是手动创建属性:

private string _MyString = "initial value";
public string MyString { get { return _MyString; } set { _MyString = value; } }
Run Code Online (Sandbox Code Playgroud)

或初始化构造函数中的值:

public string MyString { get; set; }

....

public MyClass() {
    MyString = "initial value";
}
Run Code Online (Sandbox Code Playgroud)