System::Collections::Generic::BaseDictionary class

BaseDictionary class

Implementiert gemeinsamen Code für verschiedene wörterbuchähnliche Datenstrukturen (z. B. Dictionary, SortedDictionary). Sollte nicht direkt verwendet werden, außer bei Vererbung beim Definieren von Containern. Objekte dieser Klasse sollten nur über die Funktion System::MakeObject() alloziert werden. Erstelle niemals eine Instanz dieses Typs auf dem Stack oder mit dem Operator new, da dies zu Laufzeitfehlern und/oder Assertion-Fehlern führt. Wickele diese Klasse immer in einen System::SmartPtr Zeiger ein und verwende diesen Zeiger, um ihn als Argument an Funktionen zu übergeben.

template<typename Map>class BaseDictionary : public System::Collections::Generic::IDictionary<Map::key_type, Map::mapped_type>
ParameterBeschreibung
MapZugrundeliegender Map-Typ.

Methoden

MethodeBeschreibung
_add_range(std::initializer_list<typename Map::value_type>)C++‑spezifisch.
Add(const key_t&, const mapped_t&) overrideFügt ein Schlüssel-Wert-Paar zum Wörterbuch hinzu.
BaseDictionary()Erstellt eine leere Datenstruktur.
BaseDictionary(int, const Args&…)Weiterleitender Konstruktor, um Argumente an den zugrundeliegenden Map-Konstruktor weiterzugeben.
BaseDictionary(BaseType *, const Args&…)Kopierkonstruktor.
BaseDictionary(BaseType *)Kopierkonstruktor.
begin() constGibt einen Iterator zum KVPair-Wrapper für das Schlüssel-Wert-Element des Containers zurück. Implementiert im C#-Stil – der Iterator sollte das KVPair-Objekt mit den Schnittstellen get_Key() und get_Value() zurückgeben. Wenn der Container leer ist, ist der zurückgegebene Iterator gleich end().
cbegin() constGibt einen Iterator auf das erste Element des Containers zurück. Implementiert im STL-Stil. Wenn der Container leer ist, ist der zurückgegebene Iterator gleich end().
cend() constGibt einen Iterator auf das Element zurück, das dem letzten Element des Containers folgt. Implementiert im STL-Stil. Dieses Element dient als Platzhalter; ein Zugriff darauf führt zu undefiniertem Verhalten.
Clear() overrideLöscht alle Elemente.
ContainsKey(const key_t&) const overridePrüft, ob ein Schlüssel im Wörterbuch vorhanden ist.
ContainsValue(const mapped_t&)Prüft, ob ein Wert im Wörterbuch vorhanden ist. Verwendet den Operator == zum Vergleich von Werten.
data()Zugrundeliegender Datenzugriffs-Accessor.
data() constZugrundeliegender Datenzugriffs-Accessor.
end() constGibt einen Iterator zum KVPair-Wrapper für das Schlüssel-Wert-Element zurück, das dem letzten Element des Containers folgt. Implementiert im C#‑Stil – der Iterator sollte das KVPair-Objekt mit den Schnittstellen get_Key() und get_Value() zurückgeben. Dieses Element dient als Platzhalter; ein Zugriff darauf führt zu undefiniertem Verhalten.
get_Count() const overrideGibt die Elementanzahl zurück.
virtual GetEnumerator()Erstellt eine Enumerator‑Instanz, die von einer Unterklasse implementiert werden sollte.
GetValueOrDefault(const key_t&) const overrideGibt den Wert zurück, falls gefunden; andernfalls Value().
GetValueOrDefault(const key_t&, const mapped_t&) const overrideGibt den Wert zurück, falls gefunden; andernfalls defaultValue.
GetValueOrNull(const key_t&) const overrideGibt den Wert zurück, wenn gefunden; sonst null. Sinnvoll nur für Referenztypen.
idx_get(const key_t&) const overrideGetter‑Funktion für einen Schlüssel.
idx_set(const key_t&, mapped_t) overrideSetter‑Funktion für Schlüssel. Ändert oder erstellt ein Element.
virtual operator[](const key_t&)Accessor-Funktion.
Remove(const key_t&) overrideEntfernt einen bestimmten Schlüssel aus dem Wörterbuch.
SetTemplateWeakPtr(unsigned int) override
TryGetValue(const key_t&, mapped_t&) const overrideSucht nach dem Schlüsselwert und gibt ihn zurück, wenn gefunden.
virtualizeBeginConstIterator() const overrideGibt die Implementierung des const begin-Iterators für den aktuellen Container zurück.
virtualizeBeginIterator() overrideGibt die Implementierung des begin-Iterators für den aktuellen Container zurück.
virtualizeEndConstIterator() const overrideGibt die Implementierung des const end-Iterators für den aktuellen Container zurück.
virtualizeEndIterator() overrideGibt die Implementierung des end-Iterators für den aktuellen Container zurück.

Typedefs

TypedefBeschreibung
BaseTypeImplementiertes Interface.
const_iteratorKonstanter Iterator-Typ.
iteratorIterator-Typ.
KeyCollectionStellen Sie sicher, dass wir den korrekten Allocator mit dem zugrunde liegenden Speichertyp verwenden.
KVPairTyp des Schlüssel‑Wert‑Paares.
map_tInterner Map‑Typ.
ValueCollectionSammlung von Werten.

Siehe auch