CA2226:運算子應該有對稱的多載
型別名稱 |
OperatorsShouldHaveSymmetricalOverloads |
CheckId |
CA2226 |
分類 |
Microsoft.Usage |
中斷變更 |
不中斷 |
原因
型別實作等號比較運算子或不等比較運算子,但未實作相反的運算子。
規則描述
在所有情況下,只要等號比較運算子或不等比較運算子可以套用到型別的執行個體,就必須定義相反的運算子。 通常型別實作不等比較運算子的方式是傳回與等號比較運算子相反的值。
C# 編譯器會產生違反此規則的錯誤。
如何修正違規
若要修正此規則的違規情形,請同時實作等號比較運算子和不等比較運算子,或移除現有的運算子。
隱藏警告的時機
請勿隱藏此規則的警告。 如果您的型別與 .NET Framework 一致,就會無法運作。
相關規則
CA2224:多載等號比較運算子時必須一併覆寫 Equals