Leggere in inglese

Condividi tramite


Errore del compilatore CS0454

Dipendenza di vincolo circolare che interessa 'Type Parameter 1' e 'Type Parameter 2'

Questo errore si verifica perché a un certo punto un parametro di tipo fa riferimento a un altro e quest'ultimo a sua volta fa riferimento al primo. Per correggere questo errore, interrompere la dipendenza circolare rimuovendo uno dei vincoli. Tenere presente che la dipendenza di vincolo circolare può essere indiretta.

Esempio 1

Il codice seguente genera l'errore CS0454.

// CS0554  
using System;  
public class GenericsErrors
{  
    public class G4<T> where T : T { } // CS0454  
}  

Esempio 2

L'esempio seguente mostra una dipendenza circolare tra due vincoli di tipo.

public class Gen<T,U> where T : U where U : T  // CS0454  
{  
}