Partager via


vector (STL/CLR)

La classe du modèle décrit un objet qui contrôle la séquence de longueur variée d'éléments ayant un accès aléatoire. Vous utilisez le conteneur vector pour gérer une séquence d'éléments comme un bloc contigu de stockage. Le bloc est implémenté en tant que tableau qui s'étend à la demande.

Dans la description ci-dessous, GValue est le même que Value sauf si ce dernier est un type de référence, auquel cas il vaut Value^.

template<typename Value>
    ref class vector
        :   public
        System::ICloneable,
        System::Collections::IEnumerable,
        System::Collections::ICollection,
        System::Collections::Generic::IEnumerable<GValue>,
        System::Collections::Generic::ICollection<GValue>,
        System::Collections::Generic::IList<GValue>,
        Microsoft::VisualC::StlClr::IVector<GValue>
    { ..... };

Paramètres

  • Valeur
    Type d'un élément dans la séquence contrôlée.

Membres

Définition de type

Description

vecteur : : const_iterator (STL/CLR)

Type d'un itérateur constant pour la séquence contrôlée.

vecteur : : const_reference (STL/CLR)

Type d'une référence constante à un élément.

vecteur : : const_reverse_iterator (STL/CLR)

Le type d'un itérateur inverse constant pour la séquence contrôlée.

vecteur : : difference_type (STL/CLR)

Type d'une distance signée entre deux éléments.

vecteur : : generic_container (STL/CLR)

Le type de l'interface générique pour le conteneur.

vecteur : : generic_iterator (STL/CLR)

Le type d'un itérateur pour l'interface générique pour le conteneur.

vecteur : : generic_reverse_iterator (STL/CLR)

Le type d'un itérateur inversé pour l'interface générique pour le conteneur.

vecteur : : generic_value (STL/CLR)

Le type d'un élément pour l'interface générique pour le conteneur.

vecteur : : itérateur (STL/CLR)

Type d'un itérateur pour la séquence contrôlée.

vecteur : : référence (STL/CLR)

Type d'une référence à un élément.

vecteur : : reverse_iterator (STL/CLR)

Le type d'un itérateur inversé pour la séquence contrôlée.

vecteur : : size_type (STL/CLR)

Type d'une distance signée entre deux éléments.

vecteur : : value_type (STL/CLR)

Le type d'un élément.

Fonction membre

Description

vecteur : : assignez (STL/CLR)

Remplace tous les éléments.

vecteur : : à (STL/CLR)

Accède à un élément ayant une position spécifiée.

vecteur : : DOS (STL/CLR)

Accède au dernier élément.

vecteur : : démarrez (STL/CLR)

Désigne le début de la séquence contrôlée.

vecteur : : capacité (STL/CLR)

Signale la taille de l'espace de stockage alloué pour le conteneur.

vecteur : : espace libre (STL/CLR)

Supprime tous les éléments.

vecteur : : vide (STL/CLR)

Teste si aucun élément n'est présent.

vecteur : : fin (STL/CLR)

Désigne la fin de la séquence contrôlée.

vecteur : : effacement (STL/CLR)

Supprime les éléments placés aux positions spécifiées.

vecteur : : avant (STL/CLR)

Accède au premier élément.

vecteur : : insertion (STL/CLR)

Ajoute les éléments à une position spécifiée.

vecteur : : pop_back (STL/CLR)

Supprime le dernier élément.

vecteur : : push_back (STL/CLR)

Ajoute un nouveau dernier élément.

vecteur : : rbegin (STL/CLR)

Désigne le début de la séquence contrôlée inversée.

vecteur : : rend (STL/CLR)

Désigne la fin de la séquence contrôlée inversée.

vecteur : : réserve (STL/CLR)

Garantit une capacité minimale de croissance pour le conteneur.

vecteur : : redimensionnez (STL/CLR)

Change le nombre d'éléments.

vecteur : : taille (STL/CLR)

Compte le nombre d'éléments.

vecteur : : échange (STL/CLR)

Échange le contenu de deux conteneurs.

vecteur : : to_array (STL/CLR)

Copie la séquence contrôlée dans un nouveau tableau.

vecteur : : vecteur (STL/CLR)

Construit un objet container.

Propriété

Description

vecteur : : back_item (STL/CLR)

Accède au dernier élément.

vecteur : : front_item (STL/CLR)

Accède au premier élément.

Opérateur

Description

vecteur : : operator= (STL/CLR)

Remplace la séquence contrôlée.

vecteur : : operator [] (STL/CLR)

Accède à un élément ayant une position spécifiée.

opérateur ! = (vecteur) (STL/CLR)

Détermine si un objet de vector n'est pas égal à un autre objet de vector.

operator< (vecteur) (STL/CLR)

Détermine si un objet de vector est inférieur à un autre objet de vector.

operator<= (vecteur) (STL/CLR)

Détermine si un objet de vector est inférieur ou égal à un objet de vector.

operator== (vecteur) (STL/CLR)

Détermine si un objet de vector n'est pas égal à un autre objet de vector.

operator> (vecteur) (STL/CLR)

Détermine si un objet de vector est plus grand qu'un autre objet de vector.

operator>= (vecteur) (STL/CLR)

Détermine si un objet de vector est supérieur ou égal à un objet de vector.

Interfaces

Interface

Description

ICloneable

Dupliquer un objet.

IEnumerable

Parcourir les éléments.

ICollection

Maintenir le groupe d'éléments.

IEnumerable

Parcourir les éléments typés.

ICollection

Maintenir le groupe d'éléments typés.

IList

Gardez le groupe ordonné d'éléments typés.

IVector<Value>

Maintenir le conteneur générique.

Notes

L'objet alloue et libère le stockage de la séquence qu'il contrôle avec un tableau d'éléments de Value, qui s'étend à la demande. La croissance se produit de sorte que le coût d'ajout d'un nouvel élément est de temps fixe amorti. En d'autres termes, le coût d'ajout d'éléments de la collection n'augmente pas, en moyenne, car la longueur de la séquence contrôlée est plus grande. Par conséquent, un vecteur est un bon exemple de conteneur sous-jacent de la classe de modèle stack (STL/CLR).

Un vector prend en charge les itérateurs à accès aléatoire, ce qui signifie que vous pouvez faire référence à un élément en donnant directement sa position numérique, en partant de zéro pour le premier élément (avant), jusqu'à vecteur : : taille (STL/CLR)() - 1 pour le dernier élément (arrière). Cela signifie également qu'un vecteur est un bon exemple de conteneur sous-jacent de la classe de modèle priority_queue (STL/CLR).

Un itérateur de vecteur enregistre une gestion de l'objet vecteur associé, ainsi que le décalage de l'élément qu'elle pointe. Vous pouvez utiliser des itérateurs uniquement avec leurs objets conteneurs associés. Le décalage d'un élément vectoriel est identique à sa place.

Insérer ou effacer les éléments peut modifier la valeur de l'élément stocké à une position spécifiée, la valeur indiquée par un itérateur peut également changer. (Le conteneur peut avoir à copier des éléments vers le haut ou le bas pour créer un trou avant l'insertion ou de remplir un trou après un effacement.) Cependant, un itérateur vectoriel reste valide à condition que le décalage soit compris dans la plage [0, vecteur : : taille (STL/CLR)()]. De plus, un itérateur valide reste déréférençable -- vous pouvez l'utiliser pour accéder ou modifier la valeur de l'élément qu'il indique -- tant que son décalage n'est pas égal à size().

Effacer ou supprimer un élément appelle le destructeur pour sa valeur stockée. Détruire le conteneur efface tous les éléments. Par conséquent, un conteneur dont le type d'élément est une classe de base garantit qu'aucun élément ne survive au conteneur. Notez, toutefois, qu'un conteneur de descripteurs ne détruit not ses éléments.

Configuration requise

En-tête : <cliext/vector>

Espace de noms cliext

Voir aussi

Référence

deque (STL/CLR)

list (STL/CLR)

priority_queue (STL/CLR)

queue (STL/CLR)

stack (STL/CLR)

Autres ressources

Référence de bibliothèque STL/CLR