【发布时间】:2010-11-20 17:27:13
【问题描述】:
当我必须为
实现相等比较器时public class SampleClass
{
public int Prop { get; set; }
}
我应该做
null == new SampleClass()
和
new SampleClass() == null
和
new SampleClass().Equals(null)
假的?
然后呢
new SampleClass() != null
应该也是假的吧?
更新人们质疑这个问题背后的原因。应该是这样 != 和 == 总是相反的。但是,如果我实现了这些方法,所以上面的所有比较结果都是错误的,那么 == 和 != 运算符将产生相同的结果。所以 != 应该返回 true 还是 false 是一个两难的选择。
【问题讨论】:
标签: c# .net operators iequatable equals-operator