在其声明中指定属性的初始值

时间:2013-12-21 12:15:42

标签: c# properties

有没有办法定义属性并在一个语句中设置其值?

我正在寻找类似的东西:

public bool isConnected = false { get; private set; }

2 个答案:

答案 0 :(得分:3)

没有。

但是,您可以将支持字段与初始值设定项一起使用:

public bool IsConnected
{
    get { return isConnected; }
    private set { isConnected = value; }
}
private bool isConnected = false; // which is, in fact, a bool's default value

如果由于某种原因不想使用显式支持字段,则可以始终在class'es构造函数中初始化该属性。另一方面,在上面的例子中,可以完全避免使用私有的setter,并在整个类中使用支持字段。


请注意,通常的做法是将UpperCamelCase用于公共成员。

答案 1 :(得分:1)

无法定义属性并在c#中的一个语句中设置其值。 你可以使用属性的支持字段

private bool backingField = false;
public bool prop{get{return backingField;} set{backingField = value;}}

初始化constuctor中的属性

class class1
{
 public bool prop{get; private set;}
 public class1()
 {prop = false;}
}

或 只需使用一个字段

public bool prop = false