Partager via


CAtlMap, classe

Cette classe fournit des méthodes pour créer et gérer un objet de mappage.

template< 
   typename K, 
   typename V, 
   class KTraits = CElementTraits< K >, 
   class VTraits = CElementTraits< V > 
> 
class CAtlMap

Paramètres

  • K
    Le type d'élément clé.

  • V
    Le type d'élément de valeur.

  • KTraits
    Le code utilisé pour copier ou déplacer des éléments clé. Consultez classe de CElementTraits pour plus de détails.

  • VTraits
    Le code utilisé pour copier ou déplacer des éléments de valeur.

Membres

Typedefs publics

Nom

Description

CAtlMap::KINARGTYPE

Tapez utilisé lorsqu'une touche est passée comme argument d'entrée

CAtlMap::KOUTARGTYPE

Tapez utilisé lorsqu'une touche est retournée comme argument de sortie.

CAtlMap::VINARGTYPE

Tapez utilisé lorsqu'une valeur est passée comme argument d'entrée.

CAtlMap::VOUTARGTYPE

Tapez utilisé lorsqu'une valeur est passée comme argument de sortie.

Classes publiques

Nom

Description

CAtlMap::CPair, classe

Une classe contenant les éléments de clés et de valeurs.

Membres de données de CPair

Nom

Description

CAtlMap::CPair::m_key

Le membre enregistrant l'élément clé.

CAtlMap::CPair::m_value

Le membre enregistrement de l'élément de valeur.

Constructeurs publics

Nom

Description

CAtlMap::CAtlMap

Constructeur.

CAtlMap::~CAtlMap

Le destructeur.

Méthodes publiques

Nom

Description

CAtlMap::AssertValid

Appelez cette méthode pour générer une CAtlMap ASSERT si n'est pas valide.

CAtlMap::DisableAutoRehash

Appelez cette méthode pour désactiver le nouveau hachage automatique de l'objet d' CAtlMap .

CAtlMap::EnableAutoRehash

Appelez cette méthode pour activer le nouveau hachage automatique de l'objet d' CAtlMap .

CAtlMap::GetAt

Appelez cette méthode pour retourner l'élément à une position spécifiée dans le mappage.

CAtlMap::GetCount

Appelez cette méthode pour récupérer le nombre d'éléments dans le mappage.

CAtlMap::GetHashTableSize

Appelez cette méthode pour déterminer le nombre de coffres dans la table de hachage du mappage.

CAtlMap::GetKeyAt

Appelez cette méthode pour extraire la clé stockée à la position de l'objet d' CAtlMap .

CAtlMap::GetNext

Appelez cette méthode pour obtenir un pointeur vers la prochaine paire d'éléments stockée dans l'objet d' CAtlMap .

CAtlMap::GetNextAssoc

Obtient l'élément pour itérer.

CAtlMap::GetNextKey

Appelez cette méthode pour récupérer la prochaine clé de l'objet d' CAtlMap .

CAtlMap::GetNextValue

Appelez cette méthode pour obtenir la prochaine valeur de l'objet d' CAtlMap .

CAtlMap::GetStartPosition

Appelez cette méthode pour démarrer une itération de mappage.

CAtlMap::GetValueAt

Appelez cette méthode pour récupérer la valeur stockée à une position dans l'objet d' CAtlMap .

CAtlMap::InitHashTable

Appelez cette méthode pour initialiser la table de hachage.

CAtlMap::IsEmpty

Appelez cette méthode pour déterminer un objet de mappage vide.

CAtlMap::Lookup

Appelez cette méthode à des clés ou des valeurs de recherche dans l'objet d' CAtlMap .

CAtlMap::Rehash

Appelez cette méthode au réchauffé l'objet d' CAtlMap .

CAtlMap::RemoveAll

Appelez cette méthode pour supprimer tous les éléments de l'objet d' CAtlMap .

CAtlMap::RemoveAtPos

Appelez cette méthode pour supprimer l'élément à la position de l'objet d' CAtlMap .

CAtlMap::RemoveKey

Appelez cette méthode pour supprimer un élément de l'objet d' CAtlMap , vu la clé.

CAtlMap::SetAt

Appelez cette méthode pour insérer une paire d'éléments dans le mappage.

CAtlMap::SetOptimalLoad

Appelez cette méthode pour définir le chargement optimal de l'objet d' CAtlMap .

CAtlMap::SetValueAt

Appelez cette méthode pour remplacer la valeur stockée à une position dans l'objet d' CAtlMap .

Opérateurs publics

Nom

Description

CAtlMap::operator []

Remplace et ajoute un élément à CAtlMap.

Notes

CAtlMap fournit la prise en charge d'un tableau de mappage d'un type donné, la gestion d'un tableau non ordonné d'éléments clés et leurs valeurs associées. Les éléments (composée d'une clé et une valeur) sont stockés à l'aide d'un algorithme de hachage, ce qui permet un grand nombre de données efficacement à stocker et être récupérées.

Les paramètres d' KTraits et d' VTraits sont des classes Ctraits qui contiennent un code supplémentaire nécessaire pour copier ou déplacer des éléments.

Une alternative à CAtlMap est offertes par la classe de CRBMap . CRBMap stocke également les paires clé/valeur, mais caractéristiques de performance d'objets exposés différentes. Le temps nécessaire pour insérer un élément, rechercher une clé, ou pour supprimer une clé d'un objet d' CRBMap est le journal de commande (n), où n est le nombre d'éléments. Pour CAtlMap, toutes ces opérations prennent généralement un temps fixe, bien que les pires scénarios peuvent être de la commande N. Par conséquent, dans un cas courant, CAtlMap est plus rapide.

L'autre différence entre CRBMap et CAtlMap est évidente en itérant au sein de les éléments stockés. Dans CRBMap, les éléments sont suivis dans un ordre trié. Dans CAtlMap, les éléments ne sont pas classés, et aucune commande ne peut être déduite.

Lorsqu'un petit nombre d'éléments doivent être enregistrés, utilisez la classe de CSimpleMap à la place.

Pour plus d'informations, consultez Classes de collection ATL.

Configuration requise

Header: atlcoll.h

Voir aussi

Concepts

Exemple de bannière

Exemple UpdatePV

Autres ressources

Vue d'ensemble de la classe ATL