Partager via


CRBTree, classe

Cette classe fournit des méthodes pour créer et utiliser une arborescence de Rouge-Noir.

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

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

CRBTree::KINARGTYPE

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

CRBTree::KOUTARGTYPE

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

CRBTree::VINARGTYPE

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

CRBTree::VOUTARGTYPE

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

Classes publiques

Nom

Description

CRBTree::CPair, classe

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

Constructeurs publics

Nom

Description

CRBTree::~CRBTree

Le destructeur.

Méthodes publiques

Nom

Description

CRBTree::FindFirstKeyAfter

Appelez cette méthode pour rechercher la position de l'élément qui utilise la clé suivante disponible.

CRBTree::GetAt

Appelez cette méthode pour obtenir l'élément à une position dans l'arborescence.

CRBTree::GetCount

Appelez cette méthode pour obtenir le nombre d'éléments dans l'arborescence.

CRBTree::GetHeadPosition

Appelez cette méthode pour obtenir la valeur de la position de l'élément au début de l'arborescence.

CRBTree::GetKeyAt

Appelez cette méthode pour obtenir la clé d'une position dans l'arborescence.

CRBTree::GetNext

Appelez cette méthode pour obtenir un pointeur vers un élément stocké dans l'objet d' CRBTree , et avancez la position à l'élément.

CRBTree::GetNextAssoc

Appelez cette méthode pour obtenir la clé et la valeur d'un élément stocké dans le mappage et pour avancer la position à l'élément.

CRBTree::GetNextKey

Appelez cette méthode pour obtenir la clé d'un élément stocké dans l'arborescence et pour avancer la position à l'élément.

CRBTree::GetNextValue

Appelez cette méthode pour obtenir la valeur d'un élément stocké dans l'arborescence et pour avancer la position à l'élément.

CRBTree::GetPrev

Appelez cette méthode pour obtenir un pointeur vers un élément stocké dans l'objet d' CRBTree , puis mettez à jour la position à l'élément précédent.

CRBTree::GetTailPosition

Appelez cette méthode pour atteindre la valeur de position de l'élément la fin de l'arborescence.

CRBTree::GetValueAt

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

CRBTree::IsEmpty

Appelez cette méthode pour déterminer un objet vide d'arborescence.

CRBTree::RemoveAll

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

CRBTree::RemoveAt

Appelez cette méthode pour supprimer l'élément à la position donnée dans l'objet de CRBTree .

CRBTree::SetValueAt

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

Notes

Une arborescence de Rouge- Noir est un arbre de recherche binaire qui utilise un bit supplémentaire des informations par nœud pour vérifier qu'il reste « équilibré, » autrement dit, la hauteur de l'arborescence ne développe pas de façon disproportionnée grand et n'affecte pas les performances.

Cette classe de modèle est conçue pour être utilisée par CRBMap et CRBMultiMap. La partie des méthodes qui composent ces classes dérivées sont fournies par CRBTree.

Pour une description plus complet des classes de collection et leurs caractéristiques de fonctionnalités et performances, consultez Classes de collection ATL.

Configuration requise

Header: atlcoll.h

Voir aussi

Autres ressources

Vue d'ensemble de la classe ATL