使用C# 6的表达式主体成员,我可以这样写:
public string FullName => $"{_firstName} {_lastName}";
我还可以这样写:
static void Print(string message) => Console.WriteLine(message);
在第一个示例中,表达式返回了某些内容。在第二个示例中,它则没有返回任何值。
为了确定如何“操作”,它发生了什么以不需要任何附加语法?或者说它只是在编译时查看方法签名?
我不喜欢把事情留给“自动处理”,而不知道发生了什么。
我还可以这样写:
static void Print(string message) => Console.WriteLine(message);
在第一个示例中,表达式返回了某些内容。在第二个示例中,它则没有返回任何值。
为了确定如何“操作”,它发生了什么以不需要任何附加语法?或者说它只是在编译时查看方法签名?
我不喜欢把事情留给“自动处理”,而不知道发生了什么。
$"..."
只是String.Format(...)
的简写版本,毫无疑问会返回一个字符串。 - MakePeaceGreatAgainvoid
,是吗?这方面没有更多的编译器决定。我不明白你的问题。 - MakePeaceGreatAgainstatic string Print(string message) => message;
?这只是另一种编写Action<T>
和Func<T>
的方式。 - Alexander Derck