CS.OVRD.EQUALS
公开或嵌套公开引用类型重载了等号运算符 (Equals(object))。
漏洞与风险
对于引用类型,等号运算符的默认实现几乎始终正确。默认情况下,只有当两个引用指向同一对象时才会相等。
示例 1
复制
public class Foo {
public bool Equals(object o) { // defect
return true;
}
private class InnerClass {
public bool Equals(object o) { // OK - not a public class
return true;
}
}
public struct InnerStruct {
public bool Equals(object o) { // OK - not a reference type
return true;
}
}
}