Chyba kompilátoru CS0449
Omezení "třída" nebo "struktura" musí být před všemi dalšími omezeními.
Omezení parametru typu obecného typu nebo metody musí nastat v určitém pořadí: class
nebo struct
musí být nejprve, pokud existují, pak všechna omezení rozhraní a nakonec jakákoli omezení konstruktoru. Tato chyba je způsobená tím, že class
struct
se jako první nezobrazuje omezení. Pokud chcete tuto chybu vyřešit, přeuspořádte klauzule constraint.
Následující ukázka vygeneruje CS0449.
// CS0449.cs
// compile with: /target:library
interface I {}
public class C4
{
public void F1<T>() where T : class, struct, I {} // CS0449
public void F2<T>() where T : I, struct {} // CS0449
public void F3<T>() where T : I, class {} // CS0449
// OK
public void F4<T>() where T : class {}
public void F5<T>() where T : struct {}
public void F6<T>() where T : I {}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: