Ошибка компилятора CS1958
Выражения инициализатора объектов и коллекции могут не применяться к выражению создания делегата.
В отличие от класса или структуры, делегат не имеет членов, поэтому инициализатору объекта нечего инициализировать. Если эта ошибка возникает, то возможно она вызвана фигурными скобками после выражения создания делегата. Просто удалите эти фигурные скобки, и ошибка исчезнет.
- Удалите фигурные скобки.
В следующем коде возникает ошибка CS1958.
// cs1958.cs
public class MemberInitializerTest
{
delegate void D<T>();
public static void GenericMethod<T>() { }
public static void Run()
{
D<int> genD = new D<int>(GenericMethod<int>) { }; // CS1958
// Try the following line instead
// D<int> genD = new D<int>(GenericMethod<int>);
}
}
Отзыв о .NET
.NET — это проект с открытым исходным кодом. Выберите ссылку, чтобы оставить отзыв: