【发布时间】:2010-09-10 08:37:18
【问题描述】:
可能重复:
How do I check for nulls in an '==' operator overload without infinite recursion?
当我为对象重载 == 运算符时,我通常会这样写:
public static bool operator ==(MyObject uq1, MyObject uq2) {
if (((object)uq1 == null) || ((object)uq2 == null)) return false;
return uq1.Field1 == uq2.Field1 && uq1.Field2 == uq2.Field2;
}
如果你不向下转换为对象,函数会递归到自身,但我想知道是否有更好的方法?
【问题讨论】:
-
查看此链接以获得正确的全面实施stackoverflow.com/questions/104158/…
标签: c# operator-overloading equals