İngilizce dilinde oku

Aracılığıyla paylaş


Derleyici Uyarısı (düzey 3) CS0661

'class' == işlecini veya != işlecini tanımlar ancak Object.GetHashCode() öğesini geçersiz kılmaz

Derleyici kullanıcı tanımlı eşitlik veya eşitsizlik işlecini algılasa da GetHashCode işlevi için geçersiz kılma yok. Kullanıcı tanımlı eşitlik veya eşitsizlik işleci, GetHashCode işlevini de geçersiz kılmak istediğinizi gösterir.

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

// CS0661.cs  
// compile with: /W:3  
class Test   // CS0661  
{  
   public static bool operator == (object o, Test t)  
   {  
      return true;  
   }  
  
   public static bool operator != (object o, Test t)  
   {  
      return true;  
   }  
  
   public override bool Equals(object o)  
   {  
      return true;  
   }  
  
   // uncomment the GetHashCode function to resolve  
   // public override int GetHashCode()  
   // {  
   //    return 0;  
   // }  
  
   public static void Main()  
   {  
   }  
}