Checkers:CS.WRONGUSE.REFEQ/ja
From Insight-9.5
メソッド'Object.ReferenceEquals' は、値型で呼び出される場合、常に false となります。そのため、このチェックは無意味です。
例 1
1 namespace NameSpace {
2 struct S {
3 }
4 class A {
5 }
6
7 class Processor {
8 public bool CompareArgs(S s, A a, Object o) {
9 if (System.Object.ReferenceEquals(s, a)) // defect
10 return false;
11 if (System.Object.ReferenceEquals(o, s)) // defect
12 return false;
13 if (System.Object.ReferenceEquals(a, o)) // OK
14 return false;
15 return true;
16 }
17 }
18 }


