Errore del compilatore CS0449
Il vincolo 'class' o 'struct' deve precedere gli altri vincoli
I vincoli sul parametro di tipo di un tipo o metodo generico devono essere disposti in un ordine specifico: prima class
o struct
, se presente, quindi i vincoli di interfaccia e infine tutti i vincoli del costruttore. Questo errore deriva dal fatto che il vincolo class
o struct
non viene visualizzato per primo. Per risolvere questo errore, riordinare le clausole di vincolo.
L'esempio seguente genera l'errore 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 {}
}
Feedback su .NET
.NET è un progetto di open source. Selezionare un collegamento per fornire feedback: