在声明期间初始化并创建速记获取器/设置器
本文关键字:获取 设置 创建 声明 初始化 | 更新日期: 2023-09-27 18:36:14
如何在声明期间初始化成员变量并创建 getter/setter 速记?是否可以或必须使用构造函数来分配值?
例如,我想做一些与此类似的事情
public class Money
{
public int dollars = 200 {get; set;}
}
或
public int dollars = 200;
dollars
{
get;
set;
}
在 C# 6 及更高版本中,可以初始化自动实现的属性,类似于字段:
public string FirstName { get; set; } = "Jane";
来源: MSDN
public class Money
{
private int dollars = 200;
public int Dollars
{
get { return dollars; }
set { dollars = value; }
}
}
或
public class Money
{
public int Dollars { get; set; }
public Money()
{
Dollars = 200;
}
}
不幸的是,
目前没有办法实现这一目标。
必须在声明属性支持字段时分配默认值,或者在使用自动属性时从构造函数分配默认值。
public class Money
{
public int Dollars {get;set;}
public Money()
{
Dollars = 200;
}
}