StructuralComparisons.StructuralEqualityComparer Vlastnost

Definice

Získá předdefinovaný objekt, který porovnává dva objekty pro strukturální rovnost.

public:
 static property System::Collections::IEqualityComparer ^ StructuralEqualityComparer { System::Collections::IEqualityComparer ^ get(); };
public static System.Collections.IEqualityComparer StructuralEqualityComparer { get; }
static member StructuralEqualityComparer : System.Collections.IEqualityComparer
Public Shared ReadOnly Property StructuralEqualityComparer As IEqualityComparer

Hodnota vlastnosti

Předdefinovaný objekt, který slouží k porovnání dvou objektů kolekce pro strukturální rovnost.

Poznámky

Když objekt IEqualityComparer vrácený touto vlastností je předán do metody porovnání rovnosti objektu kolekce, například Array.IStructuralEquatable.Equals(Object, IEqualityComparer) nebo Tuple<T1,T2,T3>.IStructuralEquatable.Equals(Object, IEqualityComparer), jeho IEqualityComparer.Equals metoda je volána pro každý člen pole nebo pro každou součást řazené kolekce členů. Tato implementace Equals metody se chová následovně, když porovnává každou položku objektu kolekce s odpovídající položkou jiného objektu kolekce:

  • Pokud jsou nullobě položky , považuje obě položky za stejné.

  • Pokud je jedna položka null, ale druhá položka není, považuje dvě položky za nerovné.

  • Pokud první položku v porovnání lze přetypovat na IStructuralEquatable objekt (jinými slovy, pokud se jedná o objekt kolekce, který implementuje IStructuralEquatable rozhraní), volá metodu IStructuralEquatable.Equals .

  • Pokud první položku v porovnání nelze přetypovat na IStructuralEquatable objekt (jinými slovy, pokud to není objekt kolekce, který implementuje IStructuralEquatable rozhraní), volá metodu položky Equals .

Platí pro

Viz také