System.Generics.Defaults.IEqualityComparer

Aus RAD Studio API Documentation
Wechseln zu: Navigation, Suche

Delphi

IEqualityComparer<T> = interface

C++

template<typename T> __interface IEqualityComparer__1  : public System::IInterface

Eigenschaften

Typ Sichtbarkeit Quelle Unit Übergeordnet
interface
class
public
System.Generics.Defaults.pas
System.Generics.Defaults.hpp
System.Generics.Defaults System.Generics.Defaults

Beschreibung

IEqualityComparer ist das generische Interface, mit dem zwei Werte auf Gleichheit überprüft werden.

IEqualityComparer wird von Klassen implementiert, die einen Gleichheitsvergleich von zwei Werten desselben Typs unterstützen müssen. Generische Kollektionen benötigen Instanzen von Klassen, die das Interface IEqualityComparer implementieren, damit die Unterstützung für benutzerdefinierte Datentypen bereitgestellt werden kann. Die Methode Equals wird beispielsweise von TList zur Überprüfung verwendet, ob ein gegebener Wert in der Liste vorhanden ist. Neben der Überprüfung auf Gleichheit zweier Werte stellt IEqualityComparer auch eine GetHashCode-Methode bereit, mit der für jeden Wert ein Hash-Code erzeugt werden kann. GetHashCode wird ausgiebig in Hash-basierten Zuordnungsklassen, wie TDictionary, verwendet.

Hinweis: Es wird empfohlen, die Klasse TEqualityComparer als Basis für benutzerdefinierte Vergleichsoperationen zu verwenden, anstatt das Interface IEqualityComparer direkt zu implementieren.

Siehe auch

Codebeispiele