Hinweis
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, sich anzumelden oder das Verzeichnis zu wechseln.
Für den Zugriff auf diese Seite ist eine Autorisierung erforderlich. Sie können versuchen, das Verzeichnis zu wechseln.
Diese Klasse stellt eine Zuordnungsstruktur dar, die alle Schlüssel kann mit mehr als einem Wert, RED-Schwarz mithilfe einer binären Struktur zugeordnet werden können.
template<
typename K,
typename V,
class KTraits = CElementTraits< K >,
class VTraits = CElementTraits< V >
> class CRBMultiMap : public CRBTree< K, V, KTraits, VTraits >
Parameter
K
Der Schlüsselelementtyp.V
Der Wertselementtyp.KTraits
Der Code verwendet, um Schlüsselelemente zu kopieren oder verschieben.Siehe CElementTraits-Klasse für weitere Details.VTraits
Der Code verwendet, um Wertelemente zu kopieren oder verschieben.
Mitglieder
Öffentliche Konstruktoren
Name |
Description |
|---|---|
Der -Konstruktor. |
|
Der Destruktor. |
Öffentliche Methoden
Name |
Description |
|---|---|
Rufen Sie diese Methode auf, um die Position des ersten Elements mit einer angegebenen Schlüssel zu ermitteln. |
|
Rufen Sie diese Methode auf, um den Wert abzurufen, der mit einer angegebenen Schlüssel, und aktualisieren Sie den Positionswert. |
|
Rufen Sie diese Methode auf, um das Element abzurufen, das einer angegebenen Schlüssel, und aktualisieren Sie den Positionswert. |
|
Rufen Sie diese Methode auf, um ein Elementpaar in die Zuordnung einzufügen. |
|
Rufen Sie diese Methode auf, um alle Schlüssel-Werts-Elemente für eine angegebene Schlüssel zu entfernen. |
Hinweise
CRBMultiMap bietet Unterstützung für ein Zuordnungsarray eines angegebenen Typs und verwaltet ein geordnetes Array Schlüsselelemente und Werte.Im Gegensatz zur CRBMap-Klasse kann jede Schlüssel mit mehr als einem Wert zugeordnet werden.
Elemente (einem Schlüssel und einem Wert bestehend) werden in einer Struktur der binären Struktur, mithilfe der Methode CRBMultiMap::Insert gespeichert.Elemente können mit der Methode CRBMultiMap::RemoveKey entfernt werden, die alle Elemente gelöscht werden, die die angegebene Schlüssel entsprechen.
Das Durchlaufen der Struktur wird mit Methoden wie CRBTree::GetHeadPosition, CRBTree::GetNext und CRBTree::GetNextValue zulässt.Auf die möglicherweise mehrere Werte pro Schlüssel zuzugreifen kann mithilfe der CRBMultiMap::FindFirstWithKey, CRBMultiMap::GetNextValueWithKey und CRBMultiMap::GetNextWithKey-Methoden möglich.Im Beispiel für CRBMultiMap::CRBMultiMap für eine Abbildung von diesem in der Praxis.
Die KTraits und VTraits-Parameter sind Merkmalklassen, die jeden ergänzenden Code enthalten, der erforderlich ist, um Elemente zu kopieren oder verschieben.
CRBMultiMap wird von CRBTree berechnet, das einer binären Struktur mithilfe des RED-Schwarz Algorithmus implementiert.Eine Alternative zu CRBMultiMap und zu CRBMap wird durch die CAtlMap-Klasse bereitgestellte.Wenn nur eine kleine Anzahl Elemente gespeichert werden müssen, erwägen Sie, die CSimpleMap-Klasse stattdessen zu verwenden.
Weitere finden vollständige Erläuterung der verschiedenen Auflistungsklassen und ihre Funktionen und Leistungsmerkmale, ATL-Auflistungsklassen.
Vererbungshierarchie
CRBMultiMap
Anforderungen
Header: atlcoll.h