Chyba kompilátoru CS0456
Parametr typu Název parametru 1 má omezení "struktura", takže parametr Type Name 1 nelze použít jako omezení pro název parametru typu 2.
Omezení typu hodnoty jsou implicitně zapečetěná, takže tato omezení nelze použít jako omezení u druhého parametru typu. Důvodem je to, že typy hodnot nelze přepsat. Chcete-li tuto chybu vyřešit, umístěte omezení typu hodnoty přímo na druhý parametr typu, namísto toho nepřímo prostřednictvím prvního parametru typu.
Následující ukázka vygeneruje CS0456.
// CS0456.cs
// compile with: /target:library
public class GenericsErrors
{
public class G5<T> where T : struct
{
public class N<U> where U : T {} // CS0456
public class N2<U> where U : struct {} // OK
}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: