C# 6, expression bodied 函数编译错误

C# 6, expression bodied function compile error

我在 VS 2015 中使用 Dot Net 框架 4.6.1 在 class 中编写了以下代码。

public int NewWaySum(int a, int b) => return a + b;

但是它抛出了一个编译错误。这是我的 class:

public class MyClass {
    public int NewWaySum(int a, int b) => return a + b;
}

根据msdn,兼容C#6.0表达式体函数,应该可以编译。

到目前为止我还没有使用过表达式体函数。

错误是“class、结构或接口成员声明中的无效标记 'return'。

这是什么错误。同样的编译错误出现在VS 2017社区版

表达式 中,您不需要return。因为你只声明了一个表达式,而这个表达式的值就是返回的值:

public int NewWaySum(int a, int b) => a + b;

表达式主体不能包含return。所以

public int NewWaySum(int a, int b) => a + b;

会起作用