Condividi tramite


Avviso del compilatore (livello 3) CS0659

'class' esegue l'override di Object.Equals(object o) ma non esegue l'override di Object.GetHashCode()

Il compilatore ha rilevato un override del metodo Object.Equals, ma nessun override del metodo Object.GetHashCode. Un override di Equals implica anche l'override di GetHashCode.

Il codice seguente genera l'errore CS0659:

// 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; }  
}  

Vedi anche