İngilizce dilinde oku

Aracılığıyla paylaş


Derleyici Hatası CS0315

'valueType' türü, 'TypeorMethod<T' genel türünde veya yönteminde 'T>' tür parametresi olarak kullanılamaz. 'valueType' ile 'referenceType' arasında kutulama dönüştürmesi yok.

Bu hata, genel bir türü belirli bir sınıfla kısıtladığınızda ve örtük olarak kutulanamayan bir değer türü kullanarak bu sınıfın bir örneğini oluşturmaya çalıştığınızda oluşur.

Bu hatayı düzeltmek için

  1. Bir çözüm, yapıyı sınıf olarak yeniden tanımlamaktır.

Örnek

Aşağıdaki örnek CS0315 oluşturur:

// cs0315.cs  
public class ClassConstraint { }  
public struct ViolateClassConstraint { }  
  
public class Gen<T> where T : ClassConstraint  
{
}  
public class Test  
{  
    public static int Main()  
    {  
        Gen<ViolateClassConstraint> g = new Gen<ViolateClassConstraint>(); //CS0315  
        return 1;  
    }  
}  

Ayrıca bkz.