n_enrai49 Asked:2020-09-06 19:32:27 +0800 CST2020-09-06 19:32:27 +0800 CST 2020-09-06 19:32:27 +0800 CST 方法调用是表达式还是语句? 772 如果我调用 Console.WriteLine("Hello!"); 它会是一个运算符还是一个表达式,还是当方法返回某个值时它会被视为一个表达式? c# 1 个回答 Voted Best Answer MSDN.WhiteKnight 2020-09-07T17:19:29+08:002020-09-07T17:19:29+08:00 让我们打开规范: 12.7.6 调用表达式 12.7.6.1 概述 调用表达式用于调用方法。 调用表达式: 主表达式(参数列表选择 ) 也就是说,方法调用是一个表达式。方法调用是一个表达式,即使返回类型是 void,正如稍后在同一段落中讨论的那样: 对调用表达式求值的结果分类如下: • 如果调用表达式调用返回void 的方法或委托,则结果为空。仅在语句表达式(第 13.7 节)的上下文中或作为 lambda 表达式的主体(第 12.16 节)的上下文中才允许被归类为无的表达式。否则会发生绑定时错误。 • 否则,结果是一个值,具有方法或委托的返回类型的关联类型
让我们打开规范:
也就是说,方法调用是一个表达式。方法调用是一个表达式,即使返回类型是 void,正如稍后在同一段落中讨论的那样: