百科问答小站 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# .net core 相比 java spring,如何选择? 
  钢琴一类乐器能否用穷举的方法写下所有可能的乐谱呢? 
  有哪些看似简单却无人能解的数学猜想? 
  N 个乒乓球中有一个和其他的质量不同,用天平最少几次一定能称出来? 
  二次型的意义是什么?有什么应用? 
  如何计算一组三维空间角度数据的方差(或者说离散程度)? 
  请问贝祖定理(裴蜀定理)除了用辗转相除法还能怎么证? 
  使用容斥原理的时候发现这个恒等式,如何证明? 
  ASP.NET C# 如何做分布式负载均衡?具体思路? 

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





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