Допустим, я создаю экземпляр словаря, как этотКакой IEqualityComparer используется в словаре?
var dictionary = new Dictionary<MyClass, SomeValue>();
И MyClass мой собственный класс, реализующий IEqualityComparer<>
.
Теперь, когда я делаю операции над словарем - например, Add, Contains, TryGetValue и т. Д. - использует ли словарь по умолчанию EqualityComparer<T>.Default
, так как я никогда не передавал его в конструктор или не использовал IEqualityComparer, который реализует MyClass?
Thanks
'EqualityComparer .Default' используется. http://referencesource.microsoft.com/#mscorlib/system/collections/generic/dictionary.cs –
Vache