Chyba kompilátoru CS1688
Anonymní blok metody nelze převést bez seznamu parametrů na delegovaný typ delegate, protože má jeden nebo více parametrů.
Kompilátor umožňuje ve většině případů vynechat parametry z bloku anonymní metody. K této chybě dochází v případě, že blok anonymní metody nemá seznam parametrů, ale delegát má out
parametr. Kompilátor tuto situaci nepovoluje, protože by potřeboval ignorovat přítomnost parametru out
, což je nepravděpodobné, že by to bylo správné chování.
Následující kód vygeneruje chybu CS1688.
// CS1688.cs
using System;
delegate void OutParam(out int i);
class ErrorCS1676
{
static void Main()
{
OutParam o;
o = delegate // CS1688
// Try this instead:
// o = delegate(out int i)
{
Console.WriteLine("");
};
}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: