我需要有关“自动实施”如何与c#相关以及如何以及在何处使用它的信息?
答案 0 :(得分:4)
如果您指属性,请查看此处:Auto-Implemented Properties (C# Programming Guide)
例如:
public class PurchaseOrder
{
public double TotalPurchases { get; set; }
public double MaxPurchases { get; private set; }
public PurchaseOrder()
{
this.MaxPurchases = 10;
}
}
任何其他公共电话都可以读取或写入 TotalPurchases
MaxPurchases
仅由当前对象设置,但可以被任何其他公共呼叫读取。
答案 1 :(得分:4)
我能想到的最接近你所说的是Auto-Implemented Properties。
Pre C#3.0,如果你想写一个公共财产,你需要做以下事情:
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
它没有逻辑,真的是很多样板代码。
现在在C#3.0中,你可以去:
public string Name { get; set; }
框架会为您处理所有样板文件。只要您仍然遵守与传统属性相同的规则,您也可以混合和匹配getter / setter的不同可见性级别。
答案 2 :(得分:1)
您的意思是Auto-Implemented Properties吗?
来自MSDN:
在C#3.0及更高版本中,当属性访问器中不需要其他逻辑时,自动实现的属性使属性声明更简洁。它们还使客户端代码能够创建对象。 ...编译器创建一个私有的匿名支持字段,只能通过属性的get和set访问器访问。
基本上,它用于声明具有简单getter和setter的属性的简单语法。
答案 3 :(得分:0)
您可能听说过Auto-Implemented Properties这个词。
这是指使用如下的简写编写的属性:
public string Name { get; set; }
请注意,上述内容要快得多:
private string _name;
public string Name
{
get { return _name; }
set { _name = value; }
}
另请注意,自动实现的版本不包含任何私有字段的显式声明;这是因为该字段由编译器自动生成,因此称为“自动实现”。