gpt4 book ai didi

c# - 为什么 Equals() 和 == 被设计成不同的?

转载 作者:太空狗 更新时间:2023-10-29 20:33:34 26 4
gpt4 key购买 nike

这个问题不是关于==Equals 之间的区别。这是关于为什么它们的设计不同。

我们知道差异会导致很多问题,这些问题一定很容易预先发现:

  • Equals== 对同一实体的两个实例产生不同的结果。
  • == 比较子类时会产生不同的结果,因为 == 不是多态的

最佳答案

简短的回答是,C# 语言设计团队和 .NET 框架设计团队无法就如何最好地比较值/对象的相等性达成一致,因此每个人都实现了自己的系统。

有关更技术性、更详细的答案,请参阅 a blog post on the subject by Eric Lippert .

关于c# - 为什么 Equals() 和 == 被设计成不同的?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30412693/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com