Auf Englisch lesen

Freigeben über


Compilerwarnung (Stufe 3) CS0659

'Klasse' überschreibt Object.Equals(object o), aber nicht Object.GetHashCode().

Der Compiler hat eine Überschreibung der MethodeObject.Equals erkannt, aber keine Überschreibung der Methode Object.GetHashCode. Eine Überschreibung von Equals impliziert, dass Sie auch GetHashCode überschreiben möchten.

Der folgende Code generiert CS0659:

C#
// CS0659.cs  
// compile with: /W:3 /target:library  
class Test
{  
   public override bool Equals(object o) { return true; }   // CS0659  
}  
  
// OK  
class Test2  
{  
   public override bool Equals(object o) { return true; }  
   public override int GetHashCode() { return 0; }  
}  

Siehe auch