【发布时间】:2014-05-11 12:41:08
【问题描述】:
在 64 位 .NET 4.5 平台上,无论如何计算字符串的 GetHashCode() 方法在 32 位 .NET 4.5 平台上的结果是什么?
【问题讨论】:
-
为什么想知道怎么做?
GetHashCode()仅对程序的一次运行(在单个应用程序域中)具有确定性。我看不出您的问题与您链接的两个问题有何不同,答案是“您不能”。 -
应用程序运行的数据库需要它。这是原始开发人员的错误设计决定。知道这个问题的答案将是解决它的最简单方法。
-
请不要编辑问题的答案。这个问题正在获得重新开放的投票。也许我自己也想这样投票。
-
在阅读了这个被标记为重复的问题之后,我很难看到那里接受的答案如何没有回答这个问题,只是附加信息没有基于是否有区别它运行 64/32 位。
-
同意,“重复问题”的答案之一确实回答了这个问题。然而,这是一个不同的问题,证据在于这个问题的潜在答案不能回答另一个问题,反之亦然。想象一下,有一组构建标志会导致 64 位像 32 位一样运行。那将回答这个问题,但不能回答另一个问题。 .NET 5 或 7 中的 GetHashCode 函数如何回答另一个问题,但不回答这个问题。
标签: c# .net string hashcode gethashcode