Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Aktualisiert: November 2007
Fehlermeldung
"Klasse" definiert den Operator == oder !=, aber überschreibt Object.GetHashCode() nicht.
'class' defines operator == or operator != but does not override Object.GetHashCode()
Der Compiler hat den benutzerdefinierten Gleichheits- oder Ungleichheitsoperator entdeckt, während keine Überschreibung für die GetHashCode-Funktion entdeckt wurde. Ein benutzerdefinierter Gleichheits- oder Ungleichheitsoperator impliziert, dass auch die GetHashCode-Funktion überschrieben werden soll.
Im folgenden Beispiel wird CS0661 generiert:
// 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()
{
}
}