很抱歉将两个问题合二为一,它们是相关的。
HashCodes 代表HashSets 等。据我了解,它们必须是唯一的,不能更改,并且将对象的任何配置表示为单个数字。
我的第一个问题是,对于我的对象,包含两个 Int16a和,我认为返回类似于n 是一个大数的东西b是否安全?GetHashCodea * n + bMath.Pow(2, 16)
也GetHashCode似乎不灵活地专门返回 Int32 类型。
32bits可以存储,例如两个Int16,一个unicode字符或16个N、S、E、W罗盘方向,数量不多,即使是一些小的节点图也可能太多了。这是否代表 C# Hash 集合的限制?