Ler em inglês

Compartilhar via


Erro do Compilador CS0454

Dependência de restrição circular envolvendo 'Type Parameter 1' e 'Type Parameter 2'

Esse erro ocorre porque, em algum momento, um parâmetro de tipo se refere a outro e o segundo faz referência ao primeiro. Para corrigir esse erro, interrompa a dependência circular removendo uma das restrições. Observe que a dependência de restrição circular pode ser indireta.

Exemplo 1

O código a seguir gera o erro CS0454.

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

Exemplo 2

O exemplo a seguir demonstra uma dependência circular entre duas restrições de tipo.

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