System::Collections::Generic::BaseDictionary classe

BaseDictionary class

Implémente du code commun pour diverses structures de données similaires à des dictionnaires (p. ex. Dictionary, SortedDictionary). Ne doit pas être utilisé directement, sauf par héritage lors de la définition de conteneurs. Les objets de cette classe ne doivent être alloués qu’en utilisant la fonction System::MakeObject(). Ne créez jamais d’instance de ce type sur la pile ou en utilisant l’opérateur new, car cela entraînera des erreurs d’exécution et/ou des échecs d’assertion. Enveloppez toujours cette classe dans le pointeur System::SmartPtr et utilisez ce pointeur pour le transmettre aux fonctions en argument.

template<typename Map>class BaseDictionary : public System::Collections::Generic::IDictionary<Map::key_type, Map::mapped_type>
ParamètreDescription
MapType de map sous-jacent.

Méthodes

MéthodeDescription
_add_range(std::initializer_list<typename Map::value_type>)Spécifique à C++.
Add(const key_t&, const mapped_t&) overrideAjoute une paire clé-valeur dans le dictionnaire.
BaseDictionary()Crée une structure de données vide.
BaseDictionary(int, const Args&…)Constructeur de transmission pour transmettre les arguments au constructeur du map sous-jacent.
BaseDictionary(BaseType *, const Args&…)Constructeur de copie.
BaseDictionary(BaseType *)Constructeur de copie.
begin() constRenvoie un itérateur vers l’enveloppe KVPair pour l’élément clé-valeur du conteneur. Implémenté dans le style C# - l’itérateur doit renvoyer l’objet KVPair avec les interfaces get_Key() et get_Value(). Si le conteneur est vide, l’itérateur renvoyé sera égal à end().
cbegin() constRenvoie un itérateur vers le premier élément du conteneur. Implémenté dans le style STL. Si le conteneur est vide, l’itérateur renvoyé sera égal à end().
cend() constRenvoie un itérateur vers l’élément suivant le dernier élément du conteneur. Implémenté dans le style STL. Cet élément sert de repère ; tenter d’y accéder entraîne un comportement indéfini.
Clear() overrideSupprime tous les éléments.
ContainsKey(const key_t&) const overrideVérifie si la clé est présente dans le dictionnaire.
ContainsValue(const mapped_t&)Vérifie si la valeur est présente dans le dictionnaire. Utilise l’opérateur == pour comparer les valeurs.
data()Accesseur du stockage de données sous-jacent.
data() constAccesseur du stockage de données sous-jacent.
end() constRenvoie un itérateur vers l’enveloppe KVPair pour l’élément clé-valeur suivant le dernier élément du conteneur. Implémenté dans le style C# – l’itérateur doit renvoyer l’objet KVPair avec les interfaces get_Key() et get_Value(). Cet élément agit comme un espace réservé ; tenter d’y accéder entraîne un comportement indéfini.
get_Count() const overrideObtient le nombre d’éléments.
virtual GetEnumerator()Crée une instance d’énumérateur, doit être implémentée par la sous‑classe.
GetValueOrDefault(const key_t&) const overrideRenvoie la valeur si trouvée ; sinon Value().
GetValueOrDefault(const key_t&, const mapped_t&) const overrideRenvoie la valeur si trouvée ; sinon defaultValue.
GetValueOrNull(const key_t&) const overrideRenvoie la valeur si trouvée ; ou null sinon. N’a de sens que pour les types de référence.
idx_get(const key_t&) const overrideFonction getter indexée.
idx_set(const key_t&, mapped_t) overrideFonction setter indexée. Modifie ou crée l’élément.
virtual operator[](const key_t&)Fonction d’accès.
Remove(const key_t&) overrideSupprime la clé spécifique du dictionnaire.
SetTemplateWeakPtr(unsigned int) override
TryGetValue(const key_t&, mapped_t&) const overrideRecherche la valeur associée à la clé et la récupère si elle est trouvée.
virtualizeBeginConstIterator() const overrideObtient l’implémentation de l’itérateur const begin pour le conteneur actuel.
virtualizeBeginIterator() overrideObtient l’implémentation de l’itérateur begin pour le conteneur actuel.
virtualizeEndConstIterator() const overrideObtient l’implémentation de l’itérateur const end pour le conteneur actuel.
virtualizeEndIterator() overrideObtient l’implémentation de l’itérateur end pour le conteneur actuel.

Typedefs

TypedefDescription
BaseTypeInterface implémentée.
const_iteratorType d’itérateur const.
iteratorType d’itérateur.
KeyCollectionAssurez‑vous d’utiliser l’allocateur correct avec le type de stockage sous‑jacent.
KVPairType de paire clé-valeur.
map_tType de carte interne.
ValueCollectionCollection de valeurs.

Voir aussi