Les vecteurs (std::vector) sont des classes conteneurs dont les éléments sont contigus et stockés dans un tableau.
L'accès au contenu d'un vecteur peut être effectué avec une complexité algorithmique constante. L'ajout à la fin d'un vecteur est de complexité amortie constante, tandis que la recherche d'une valeur donnée ou l'insertion d'élément dans le vecteur est de complexité linéaire.
Constructeurs | creation d'un vecteur et initialisation éventuelle avec des valeurs données |
Opérateurs | comparaison, affectation et accès aux éléments du vecteur |
assign | affecte des éléments au vecteur |
at | retourne l'élément situé à un emplacement donné du vecteur |
back | retourne une référence sur le dernier élément du vecteur |
begin | retourne un itérateur sur le premier élément du vecteur |
capacity | retourne le nombre d'élément que le vecteur peut contenir sans allouer davantage de mémoire |
clear | supprime tous les éléments du vecteur |
empty | retourne vrai si le vecteur ne contient pas d'éléments |
end | retourne un itérateur situé juste après le dernier élément du vecteur |
erase | supprime des éléments du vecteur |
front | retourne une référence sur le premier élément du vecteur |
insert | insère des éléments dans le vecteur |
max_size | retourne la taille maximale du vecteur |
pop_back | supprime le dernier élément du vecteur |
push_back | ajoute un élément à la fin du vecteur |
rbegin | retourne un reverse_iterator vers la fin du vecteur |
rend | retourne un reverse_iterator vers le début du vecteur |
reserve | positionne la taille minimale du vecteur |
resize | change la taille du vecteur |
size | retourne le nombre d'éléments contenus dans le vecteur |
swap | échange le contenu du vecteur avec celui d'un autre |
Le vecteur de booléens (vector<bool>) est définit comme une spécialisation du template de vecteur. Il permet d'utiliser moins de mémoire. Une variable booléenne normale (bool) utilise de 1 à 4 octets de mémoire, tandis qu'un vecteur de booléen n'utilise qu'un seul bit par valeur booléenne.