Ошибка компилятора CS0815
Невозможно назначить "выражение" неявно типизированной локальной переменной
Выражение, которое используется в качестве инициализатора для неявно типизированной переменной, должно иметь тип. Поскольку выражения анонимных функций, выражения групп методов и выражение литерала null не имеют типа, они не используются в качестве инициализаторов. Нельзя инициализировать неявно типизированную переменную со значением null в ее объявлении, хотя потом ей можно назначить значение null.
В C# версии 10 Лямбда-выражений и групп методов с естественными типами можно использовать в объявлениях в var
качестве инициализаторов.
- Предоставьте явный тип для переменной.
- Или укажите естественные типы с C# версии 10 и выше.
Следующий код приводит к возникновению ошибки CS0815:
// cs0815.cs
class Test
{
public static int Main()
{
var d = s => -1; // CS0815
var e = (string s) => 0; // CS0815 for C# versions before 10
var p = null; // CS0815
var del = delegate(string a) { return -1; }; // CS0815
return -1;
}
}
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: