2018-12-22から1日間の記事一覧

配列に対してContains()を呼ぶとIEquatable.Equals()が使われない

C#

Enumerable.Contains<T>()の実装は以下のようになっていて、sourceがICollection<T>を実装していたらICollection<T>.Contains()が呼ばれ、実装していなかったらEqualityComparer<TSource>.Defaultで比較される。EqualityComparer<TSource>.Defaultはsourceの要素がIEquatable<T>を実装して</t></tsource></tsource></t></t></t>…