Partager via


vector, classe

La classe vector STL est un modèle de classe qui stocke des éléments d'un type donné dans une disposition linéaire et fournit un accès aléatoire rapide à chacun de ces éléments. Il est recommandé d'utiliser le conteneur de classe vector pour une séquence si votre priorité est de garantir des performances optimales au niveau de l'accès aléatoire. Si vous ne savez pas quel type de conteneur de séquence utiliser, choisissez le type vector.

template < 
   class Type,  
   class Allocator = allocator<Type>  
> 
class vector

Paramètres

  • Type
    Type de l'élément à stocker dans le vecteur.

  • Allocator
    Type de l'objet qui alloue et libère de la mémoire pour le vecteur. Cet argument est facultatif et a la valeur par défaut std::allocator*<Type>.*

Notes

Les vecteurs gèrent les insertions et suppressions en temps fixe à la fin de la séquence. Ailleurs dans le vecteur, les insertions et suppressions d'éléments doivent s'effectuer en temps linéaire. Le conteneur de classe deque offre de meilleures performances pour les insertions et suppressions au début et à la fin d'une séquence. Le conteneur de classe list est recommandé pour les insertions et suppressions réalisées à tout autre emplacement dans la séquence.

Une réallocation du vecteur est nécessaire quand une fonction membre doit augmenter le nombre d'éléments contenus dans le vecteur au-delà de sa capacité de stockage actuelle. D'autres insertions et suppressions peuvent modifier différentes adresses de stockage dans la séquence. Si cela se produit, les itérateurs ou les références qui pointent vers des parties modifiées dans la séquence deviennent non valides. En l'absence de réallocation, seuls les itérateurs et références situés avant le point d'insertion ou de suppression restent valides.

La classe vector<bool> est une spécialisation complète du modèle de classe vector pour les éléments de type booléen possédant un allocateur pour le type sous-jacent utilisé par la spécialisation.

La classe de référence vector<bool> est une classe imbriquée dont les objets peuvent fournir des références aux éléments (sur un octet) d'un objet vector<bool>.

Membres

Constructeurs

vecteur

Construit un vecteur de taille spécifique ou contenant des éléments de valeurs spécifiques, ou contenant un objet allocator spécifique, ou comme copie d'un autre vecteur.

Typedef

allocator_type

Type de l'objet allocator utilisé par le vecteur.

const_iterator

Type représentant un itérateur à accès aléatoire en lecture seule.

const_pointer

Type représentant un pointeur en lecture seule vers un élément d'un vecteur.

const_reference

Référence à un élément const stocké dans un vecteur pour lire et exécuter des opérations const.

const_reverse_iterator

Itérateur inverse en lecture seule.

difference_type

Type représentant la différence entre les adresses de deux éléments dans un vecteur.

iterator

Type qui fournit un itérateur à accès aléatoire pour lire ou modifier un élément dans un vecteur.

pointer

Type représentant un pointeur vers un élément d'un vecteur.

référence

Type représentant une référence à un élément stocké dans un vecteur.

reverse_iterator

Type représentant un itérateur inverse.

type_taille

Type représentant le nombre d'éléments figurant dans un vecteur.

value_type

Type représentant le type de données stockées dans un vecteur.

Fonctions membres

assign

Remplace les éléments spécifiés par les copies des nouveaux éléments.

at

Retourne une référence à l'élément à un emplacement spécifié dans le vecteur, et lève l'exception out_of_range si l'index est inférieur à zéro ou bien supérieur ou égal à la valeur de size().

back

Retourne une référence au dernier élément du vecteur.

begin

Retourne un itérateur à accès aléatoire pointant vers le premier élément dans le vecteur.

capacity

Retourne le nombre d'éléments que le vecteur peut contenir sans avoir à allouer plus de stockage.

cbegin

Retourne un itérateur const à accès aléatoire pointant vers le premier élément du vecteur.

cend

Retourne un itérateur const à accès aléatoire qui pointe vers l'élément suivant la fin du vecteur.

crbegin

Retourne un itérateur const inverse pointant vers le dernier élément du vecteur.

crend

Retourne un itérateur const inverse pointant vers l'élément précédent le premier élément du vecteur.

clear

Supprime les éléments du vecteur.

données

Retourne un pointeur vers le premier élément du vecteur.

emplace

Insère un élément construit sur place à la position spécifiée dans le vecteur.

emplace_back

Ajoute un élément construit sur place à la fin du vecteur.

empty

Vérifie si le vecteur contient des éléments.

end

Retourne un itérateur à accès aléatoire qui pointe vers l'élément suivant le dernier élément du vecteur.

erase

Supprime un élément ou une plage d'éléments aux positions spécifiées dans le vecteur.

front

Retourne une référence au premier élément du vecteur.

get_allocator

Retourne l'objet allocator utilisé par le vecteur.

insert

Insère un ou plusieurs éléments à la position spécifiée dans le vecteur.

max_size

Retourne la longueur maximale autorisée du vecteur.

pop_back

Supprime l'élément à la fin du vecteur.

push_back

Ajoute un élément à la fin du vecteur.

rbegin

Retourne un itérateur pointant vers le premier élément d'un vecteur inverse.

rend

Retourne un itérateur inverse qui pointe vers l'élément précédent le premier élément du vecteur.

reserve

Réserve une taille de stockage minimale pour un vecteur.

resize

Spécifie une nouvelle taille pour un vecteur.

shrink_to_fit

Ignore la capacité excédentaire.

size

Retourne le nombre d'éléments figurant dans le vecteur.

échange

Échange les éléments de deux vecteurs.

Opérateurs

operator[]

Retourne une référence à l'élément de vecteur à un emplacement spécifié.

opérateur =

Remplace les éléments du vecteur par une copie d'un autre vecteur.

Configuration requise

En-tête : <vector>

Espace de noms : std

Voir aussi

Référence

Sécurité des threads dans la bibliothèque standard C++

Bibliothèque STL (Standard Template Library)

Autres ressources

membres vectoriels

<vector> membres