C# 什么';用{}vs=>;定义属性之间的区别是什么;?
下面的两种语法有区别吗?是否有任何理由认为其中一个比另一个更受欢迎C# 什么';用{}vs=>;定义属性之间的区别是什么;?,c#,C#,下面的两种语法有区别吗?是否有任何理由认为其中一个比另一个更受欢迎 public string PropertyA { get => throw new NotSupportedException(); } public string PropertyB { get { throw new NotSupportedException(); } } 只是语法上的糖 public string PropertyA => throw new NotSupportedException(
public string PropertyA { get => throw new NotSupportedException(); }
public string PropertyB { get { throw new NotSupportedException(); } }
只是语法上的糖
public string PropertyA => throw new NotSupportedException();
及
编译为相同的字节码
表达式体只是创建只读属性的较短方法
我认为在某些情况下它看起来更好,但这是一种风格偏好。第二个问题是无效的C#FYIDoes问题对你有帮助吗?你的第一个问题实际上还行(尽管仍然是),这两行是一样的。
public string PropertyB { get { throw new NotSupportedException(); } }