百科问答小站 logo
百科问答小站 font logo



C#为何属性和取值相同的dynamic对象的GetHashCode()相同,直接比较两者却又不同?? 第1页

  

user avatar   Ivony 网友的相关建议: 
      

1、默认情况下,也就是不存在对==运算符的重载的情况下,==等价于Object.ReferenceEuqals。

2、即使两个对象的HashCode相同,这两个对象也可能是完全不同的对象。也就是说,

       a.GetHashCode() == b.GetHashCode && Object.Equals( a, b ) == false     

这个表达式也是有可能为真的,这是完全合理合法的。

综上所述,你的基础概念有问题,请回去把CLR via C#全文背诵。




  

相关话题

  请问对称矩阵的平方根怎么算,有公式吗? 
  C# 的扩展方法是否是一个糟糕的设计? 
  图论里的图用什么软件画比较好? 
  在高考时文科生也考数学合理吗? 
  如何通过卫星图判断这架飞机距离地面的高度? 
  科学和数学的关系是什么? 
  如何将条件收敛级数 1-1+1/2-1/2+1/3-1/3+1/4-1/4+...证其发散? 
  π的1997次方的小数点后1997位是多少? 
  如何将一个不规则石块切割成体积相等的两部分? 
  高中生大学想学量子物理,也想学基础数学,大学专业应该怎么报呢? 

前一个讨论
中国的景点门票定价合理吗?是如何定价的?
下一个讨论
同时掷三枚硬币,落地后出现三阳、三阴、两阳一阴、两阴一阳的概率相同吗?





© 2025-06-27 - tinynew.org. All Rights Reserved.
© 2025-06-27 - tinynew.org. 保留所有权利