CA2226: Operátory by měly mít symetrické přetížení
Název_typu |
OperatorsShouldHaveSymmetricalOverloads |
CheckId |
CA2226 |
Kategorie |
Microsoft.Usage |
Změnit rozdělení |
Bez rozdělení |
Příčina
Typ implementuje rovnosti nebo operátor nerovnost a neimplementuje opačné operátor.
Popis pravidla
Neexistují žádné okolnosti, kde je použitelná pro instance typu rovnosti nebo nerovnost a opačné operátor není definován.Typy obvykle implementují operátor nerovnost vrácením Negované hodnoty operátor rovnosti.
Kompilátor jazyka C# problémy chyba porušení tohoto pravidla.
Jak opravit porušení
Oprava porušení tohoto pravidla, rovnosti a nerovnost subjektů nebo odebrat, který je k dispozici.
Při potlačení upozornění
Nepotlačovat upozornění od tohoto pravidla.Typ vašeho nebude fungovat způsobem, který je konzistentní s .NET Framework.
Souvisejících pravidel
CA1046: Nepřetěžujte operátory rovnosti na odkazových typech
CA2225: Přetížení operátoru mají pojmenované alternativy
CA2224: Přepište Equals při přetížení operátoru rovnosti
CA2218: Přepište GetHashCode při přepsání Equals
CA2231: Přetižte operátor equals při přepsání ValueType.Equals