Erro do compilador CS0314
O tipo «tipo1» não pode ser utilizado como parâmetro de tipo «nome» no tipo genérico ou método «nome». Não há conversão de boxe ou conversão de parâmetro de tipo de 'tipo1' para 'tipo2'.
Quando um tipo genérico usa um parâmetro de tipo que é restrito, a nova classe também deve satisfazer essas mesmas restrições.
- No exemplo a seguir, adicione
where T : ClassConstraint
à classeB
.
O código a seguir gera CS0314:
// cs0314.cs
// Compile with: /target:library
public class ClassConstraint { }
public class A<T> where T : ClassConstraint
{ }
public class B<T> : A<T> //CS0314
{ }
// Try using this instead.
public class C<T> : A<T> where T : ClassConstraint
{ }
Comentários do .NET
O .NET é um projeto código aberto. Selecione um link para fornecer comentários: