İngilizce dilinde oku

Aracılığıyla paylaş


Derleyici Hatası CS0449

'class' veya 'struct' kısıtlaması diğer kısıtlamalardan önce gelmelidir

Genel bir türün veya yöntemin tür parametresindeki kısıtlamalar belirli bir sırada gerçekleşmelidir: class veya struct varsa, önce arabirim kısıtlamaları ve son olarak oluşturucu kısıtlamaları olmalıdır. Bu hataya ilk olarak veya struct kısıtlamasının class görünmemesi neden olur. Bu hatayı çözmek için kısıtlama yan tümcelerini yeniden sıralar.

Örnek

Aşağıdaki örnek CS0449 oluşturur.

// CS0449.cs  
// compile with: /target:library  
interface I {}  
public class C4
{  
   public void F1<T>() where T : class, struct, I {}   // CS0449  
   public void F2<T>() where T : I, struct {}   // CS0449  
   public void F3<T>() where T : I, class {}   // CS0449  
  
   // OK  
   public void F4<T>() where T : class {}  
   public void F5<T>() where T : struct {}  
   public void F6<T>() where T : I {}  
}