编译器错误 CS0815
更新:2007 年 11 月
错误消息
无法将“expression”赋予隐式类型的局部变量
如果表达式用作隐式类型的变量的初始值设定项,则必须具有类型。由于匿名函数表达式、方法组表达式和 null 文本表达式不具有类型,因此它们不是正确的初始值设定项。对于隐式类型的变量,不能在其声明中用 null 值进行初始化,但可在以后为其赋予 null 值。
更正此错误
- 为该变量提供显式类型。
示例
下面的代码生成 CS0815:
// cs0815.cs
class Test
{
public static int Main()
{
var d = s => -1; // CS0815
var e = (string s) => 0; // CS0815
var p = null;//CS0815
var del = delegate(string a) { return -1; };// CS0815
return -1;
}
}