我已经实现了一个字典,如下所示:
Dictionary<ErrorHashKey, ErrorRow> dictionary;
我已经在课堂上定义Equals()
了。我目前正在为该项目编写一些文档,并且来自IEqualityComparer Interface doc:GetHashCode()
ErrorHashKey
字典需要一个相等的实现来确定键是否相等。您可以使用接受比较器参数的构造函数来指定 IEqualityComparer 通用接口的实现;如果未指定实现,则使用默认的通用相等比较器 EqualityComparer.Default。如果类型 TKey 实现 System.IEquatable 泛型接口,则默认相等比较器使用该实现。
我没有做任何文档指定的事情(或者至少我不认为我是)。我没有在构造函数参数中传递比较器,也没有创建EqualityComparer.Default
比较器。
是否System.IEquatable<T> generic interface
在每个创建的类中自动实现?我应该定义一个实现IEqualityComparer<T>
吗?