Bibliothèque C ++ - <set>

introduction

UNE setest un conteneur associatif qui contient un ensemble trié d'objets uniques de type Key. Chaque élément ne peut apparaître qu'une seule fois, les doublons ne sont donc pas autorisés.

Il existe quatre types de conteneurs associatifs: set, multiset, map et multimap.

La valeur des éléments d'un ensemble ne peut pas être modifiée une seule fois dans le conteneur, c'est-à-dire que les éléments sont toujours const. Mais ils peuvent être insérés ou retirés du conteneur.

Les conteneurs set sont généralement plus lents que les conteneurs unordered_set pour accéder aux éléments individuels par leur clé, mais ils permettent l'itération directe sur des sous-ensembles en fonction de leur ordre.

Définition

Ci-dessous la définition de std :: set à partir du fichier d'en-tête <set>

template < 
    class Key,
    class Compare = std::less<Key>,
    class Allocator = std::allocator<Key>
> class set;

Paramètres

  • Key - Type de l'élément contenu.

    La clé peut être remplacée par tout autre type de données, y compris le type défini par l'utilisateur.

Types de membres

Les types de membres suivants peuvent être utilisés comme paramètres ou comme type de retour par les fonctions membres.

N ° Sr. Types de membres Définition
1 type de clé Clé
2 type de valeur Clé
3 référence Allocator :: référence

type de valeur&

4 const_reference Allocateur :: const_reference

const value_type &

5 aiguille Allocateur :: pointeur

std :: allocator_traits <Allocator> :: pointer

6 const_pointer Allocateur :: const_pointer

std :: allocator_traits <Allocator> :: const_pointer

sept itérateur BidirectionnelIterator
8 const_iterator Constante BidirectionalIterator
9 reverse_iterator std :: reverse_iterator <iterator>
dix const_reverse_iterator std :: reverse_iterator <const_iterator>
11 type de taille Type entier non signé (std :: size_t)
12 difference_type Type entier signé (std :: ptrdiff_t)
13 key_compare Comparer
14 value_compare Comparer
15 allocator_type Allocateur

Fonctions de <set>

Vous trouverez ci-dessous la liste de toutes les méthodes de l'en-tête <set>.

FONCTIONS DES MEMBRES

DEFAULT MEMBER FUNCTIONS

N ° Sr. Méthode et description
1 Constructeur par défaut

Construit le conteneur d'ensemble.

2 Constructeur de gamme

Construit le conteneur d'ensemble avec le contenu de la plage.

3 Copier le constructeur

Construit le conteneur d'ensemble avec la copie d'un autre ensemble.

4 Déplacer le constructeur

Construit le conteneur d'ensemble avec le contenu d'un autre ensemble à l'aide de la sémantique de déplacement.

5 Constructeur de liste d'initialisation

Construit le conteneur d'ensemble avec le contenu de la liste d'initialisation.

6 (destructeur)

Détruit le conteneur défini.

sept opérateur =

Attribue des valeurs au conteneur défini.

ITERATEURS

N ° Sr. Méthode et description
1 set :: begin

Renvoie l'itérateur au début.

2 set :: cbegin

Renvoie l'itérateur const au début.

3 set :: end

Renvoie l'itérateur pour terminer.

4 set :: cend

Renvoie l'itérateur const à la fin.

5 set :: rbegin

Renvoie l'itérateur inverse pour inverser le début.

6 set :: crbegin

Renvoie l'itérateur inverse const pour inverser le début.

sept set :: rend

Renvoie l'itérateur inverse à la fin inverse.

8 set :: crend

Renvoie l'itérateur inverse const à la fin inverse.

CAPACITÉ

N ° Sr. Méthode et description
1 set :: vide

Renvoie si le conteneur défini est vide.

2 set :: taille

Renvoie le nombre d'éléments dans le conteneur d'ensemble.

3 set :: max_size

Renvoie le nombre maximum d'éléments que le conteneur d'ensemble peut contenir.

MODIFICATEURS

N ° Sr. Méthode et description
1 mettre au clair

Supprime tous les éléments du conteneur d'ensemble.

2 set :: insert

Insère un nouvel élément dans le conteneur d'ensemble.

3 set :: emplace

Insère un nouvel élément dans l'ensemble, s'il est unique.

4 set :: emplace_hint

Insère un nouvel élément dans l'ensemble, s'il est unique, avec un indice sur la position d'insertion.

5 set :: effacer

Supprime un élément unique ou une plage d'éléments du conteneur d'ensemble.

6 set :: swap

Échange le contenu du conteneur par le contenu d'un autre ensemble de conteneurs du même type.

CHERCHER

N ° Sr. Méthode et description
1 set :: count

Renvoie le nombre d'éléments avec la valeur correspondante dans le conteneur d'ensemble.

2 set :: find

Recherche la valeur dans le conteneur d'ensemble et lui renvoie un itérateur s'il est trouvé, sinon retourne un itérateur à set :: end.

3 set :: lower_bound

Renvoie un itérateur pointant vers le premier élément du conteneur d'ensemble qui n'est pas considéré comme précédant la valeur.

4 set :: upper_bound

Renvoie un itérateur pointant vers le premier élément du conteneur set considéré comme allant après value.

5 set :: equal_range

Renvoie les limites d'une plage qui inclut tous les éléments du conteneur d'ensemble qui sont équivalents à value.

OBSERVATEURS

N ° Sr. Méthode et description
1 set :: key_comp

Renvoie une copie de l'objet de comparaison utilisé par le conteneur d'ensemble.

2 set :: value_comp

Renvoie une copie de l'objet de comparaison utilisé par le conteneur d'ensemble.

ALLOCATEUR

N ° Sr. Méthode et description
1 set :: get_allocator

Renvoie une copie de l'objet allocateur associé au conteneur d'ensemble.