【发布时间】:2010-10-01 06:56:46
【问题描述】:
重复:What is the best algorithm for an overridden System.Object.GetHashCode?
如果您编写了一个包含多种数据成员的对象,您如何智能地实现 GetHashCode()?
一位开发人员告诉我他只是对相关数据字段的哈希进行异或(^ 运算符),但我不相信这是一个“最佳实践”实现。
如果我想的话,会有函数 Object.CombineHashes(Object[]) 和/或 Object.CombineHashes(int[]) 来帮助智能地构建复杂对象的哈希值。
你会如何编写这些函数?
【问题讨论】:
-
很好的发现,@Gortok。我投票关闭。