İngilizce dilinde oku

Aracılığıyla paylaş


Derleyici Hatası CS0453

Genel tür veya 'Genel Tanımlayıcı' yönteminde 'Parametre Adı' parametresi olarak kullanabilmek için 'Tür Adı' türü null atanamaz bir değer türü olmalıdır

Bu hata, üzerinde değer kısıtlaması olan genel bir türün veya yöntemin örneğini oluştururken değer türü olmayan bir bağımsız değişken kullandığınızda oluşur. Boş değer atanabilir bir değer türü bağımsız değişkeni kullandığınızda da oluşabilir. Aşağıdaki örnekteki son iki kod satırına bakın.

Örnek

Aşağıdaki kod bu hatayı oluşturur.

// CS0453.cs  
using System;  
public class HV<S> where S : struct { }

// CS0453: string is not a value type
public class H1 : HV<string> { }

// CS0453: H1 is a class, not a struct
public class H2 : HV<H1> { }

// CS0453: HV is based on a class, not a struct
public class H3<S> : HV<S> where S : class { }
public class H4<S> : HV<S> where S : struct { } // OK

// CS0453: HV accepts a nullable int type
public class H4 : HV<int?> { }

// CS0453: HV is based on Nullable type of int
public class H5 : HV<Nullable<Nullable<int>>> { }

Ayrıca bkz.