我在2016年从.NET C#的全职编程中退休,但最近刚回来作为一个业余爱好者程序员.我有兴趣发现一种使用胖箭头编码属性的新方法:
public DateTime PicDate { get => _picDate; set => _picDate = value; }
Run Code Online (Sandbox Code Playgroud)
这就是我习惯的(以及get; set;事物):
public int Century
{
get
{
return _century;
}
set
{
_century = value;
}
}
Run Code Online (Sandbox Code Playgroud)
除了编码的简易性,实现中是否存在实际的实际差异?C#7是否比旧方式更有效地处理新方法?
换句话说,新语法是"比旧"更好吗?
它完全一样.它编译为相同的底层IL代码.
但是,我建议使用自动属性,因此您不必自己处理支持字段:
public DateTime PicDate { get; set; }
Run Code Online (Sandbox Code Playgroud)
完全一样
private DateTime _picDate;
public DateTime PicDate
{
get { return _picDate; }
set { _picDate = value; }
}
Run Code Online (Sandbox Code Playgroud)
这与=>语法示例完全相同(如Dave所述:https://docs.microsoft.com/en-us/dotnet/csharp/programming-guide/statements-expressions-operators/expression-bodied-members).
希望这能搞定!
| 归档时间: |
|
| 查看次数: |
53 次 |
| 最近记录: |