Ostrzeżenie kompilatora (poziom 3) CS0659
Funkcja "class" zastępuje obiekt.Equals(object o), ale nie zastępuje obiektu.GetHashCode()
Kompilator wykrył przesłonięcia metody, Object.Equals ale nie przesłania Object.GetHashCode metody. Przesłonięć Equals oznacza, że chcesz również zastąpić GetHashCodeelement .
Poniższy kod generuje 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; }
}
Zobacz też
Współpracuj z nami w serwisie GitHub
Źródło tej zawartości można znaleźć w witrynie GitHub, gdzie można również tworzyć i przeglądać problemy i żądania ściągnięcia. Więcej informacji znajdziesz w naszym przewodniku dla współtwórców.