![](/img/trans.png)
[英]Preferring EqualityComparer<T> to IEqualityComparer<T>
[英]IEqualityComparer vs EqualityComparer?
我已經閱讀了這篇文章,但沒有回答我的問題。
MSDN 說 :
我們建議您從EqualityComparer(Of T)類派生而不是實現IEqualityComparer(Of T)接口,因為EqualityComparer(Of T)類使用IEquatable(Of T).Equals方法而不是Object測試是否相等。等於方法。
但是如果我看一下實現,它們都使用通用類型:
public class AAA:IEqualityComparer<Box>
{
public bool Equals(Box x, Box y)
{
}
public int GetHashCode(Box obj)
{
}
}
public class BBB : EqualityComparer<Box>
{
public override bool Equals(Box x, Box y)
{
}
public override int GetHashCode(Box obj)
{
}
}
我想念什么?
我認為您提到的另一篇文章是說EqualityComparer<Box>
實現IEqualityComparer<Box>
和IEqualityComparer
,因此,如果從EqualityComparer<Box>
派生,則不必同時實現通用和非通用接口。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.