使用引用类型的值作为字典键必须做什么?

Ed *_*ess 3 c# generics dictionary gethashcode

假设我有一个类T,我想用作Dictionary<T,U>集合中的键.

我必须实现什么才能T使这些键基于值T而不是T引用?

我希望它只是GetHashCode().

dri*_*iis 5

您必须实现GetHashCode()和Equals().

Dictionary是一个Hashtable,所以你可能想读这个:Equals/GetHashCode的陷阱 - 哈希表是如何工作的?