gpt4 book ai didi

swift - 为什么默认情况下 Swift 类不可散列?

转载 作者:行者123 更新时间:2023-12-03 21:29:55 25 4
gpt4 key购买 nike

类有一个标识,它们的 hashValue 很容易成为它们在内存中的地址。为什么不是这样?

最佳答案

因为拥有 hashValue 并不是很有用基于身份。
下面是一个例子:
假设我正在合并来自两个不同来源的两组数据并检查重复项。一种常见的方法是将两者都添加到 Set .这些对象肯定会有唯一的身份(即不同的地址)。如果这意味着他们也有唯一的 hashValue s,则不会检测到任何重复项。
使用 Set 的全部原因对于重复工作首先是因为 hashValue暗示什么是重复的定义。你的提议会打破这一点。

关于swift - 为什么默认情况下 Swift 类不可散列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44378177/

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