Avertissement du compilateur (niveau 3) CS0660
'class' définit l’opérateur == ou l’opérateur != mais ne se substitue pas à Object.Equals(object o)
Le compilateur a détecté l’opérateur d’égalité ou d’inégalité défini par l’utilisateur, mais n’a détecté aucune substitution pour la méthode Object.Equals. Un opérateur d’égalité ou d’inégalité défini par l’utilisateur sous-entend que vous souhaitez également substituer la méthode Equals. Pour plus d’informations, consultez Comment définir l’égalité des valeurs pour un type.
L’exemple suivant génère l’avertissement CS0660 :
// CS0660.cs
// compile with: /W:3 /warnaserror
class Test // CS0660
{
public static bool operator == (object o, Test t)
{
return true;
}
// uncomment the Equals function to resolve
// public override bool Equals(object o)
// {
// return true;
// }
public override int GetHashCode()
{
return 0;
}
public static void Main()
{
}
}
Commentaires sur .NET
.NET est un projet open source. Sélectionnez un lien pour fournir des commentaires :