有没有办法定义属性并在一个语句中设置其值?
我正在寻找类似的东西:
public bool isConnected = false { get; private set; }
答案 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