Chyba kompilátoru CS0216
Operátor "operator" vyžaduje, aby byl definován také odpovídající operátor "missing_operator".
Uživatelem definovaný == operátor vyžaduje operátor != definovaný uživatelem a naopak.
Totéž platí také pro operátor true definovaný uživatelem a uživatelem definovaný nepravdivý operátor.
Následující ukázka vygeneruje CS0216:
// CS0216.cs
class MyClass
{
public static bool operator == (MyClass MyIntLeft, MyClass MyIntRight) // CS0216
{
return MyIntLeft == MyIntRight;
}
// to resolve, uncomment the following operator definition
/*
public static bool operator != (MyClass MyIntLeft, MyClass MyIntRight)
{
return MyIntLeft != MyIntRight;
}
*/
public override bool Equals (object obj)
{
return base.Equals (obj);
}
public override int GetHashCode()
{
return base.GetHashCode();
}
public static void Main()
{
}
}
Zpětná vazba k produktu .NET
.NET je open source projekt. Vyberte odkaz pro poskytnutí zpětné vazby: