在.NET GetHashCode方法中,很多地方都使用.NET 方法.特别是在快速查找集合中的项目或确定相等性时.是否有关于如何GetHashCode为我的自定义类实现覆盖的标准算法/最佳实践,因此我不会降低性能?
我在Essential C#3.0和.NET 3.5书中读到:
GetHashCode()在特定对象的生命周期内的返回应该是常量(相同的值),即使对象的数据发生了变化.在许多情况下,您应该缓存方法返回以强制执行此操作.
这是一个有效的指导方针吗?
我在.NET中尝试了几种内置类型,但它们的行为并不像这样.