Ler em inglês

Partilhar via


Erro do compilador CS0452

O tipo «nome do tipo» deve ser um tipo de referência para poder ser utilizado como parâmetro «nome do parâmetro» no tipo genérico ou método «identificador do genérico»

Este erro ocorre quando você passa um tipo de valor, como um struct ou int como um parâmetro para um tipo genérico ou método que tem uma restrição de tipo de referência.

Exemplo

O código a seguir gera o erro CS0452.

// CS0452.cs  
using System;  
public class BaseClass<S> where S : class { }  
public class Derived1 : BaseClass<int> { } // CS0452  
public class Derived2<S> : BaseClass<S> where S : struct { } // CS0452  

Consulte também