Partager via


list (STL/CLR)

La classe de modèle décrit un objet qui contrôle une séquence de longueur variable d'éléments ayant un accès bidirectionnel. Vous utilisez le conteneur list pour gérer une séquence d'éléments sous forme de liste liée bidirectionnelle de nœuds, stockant chacun un élément.

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 s'agit Value^.

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

Paramètres

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

Membres

Définition de type

Description

liste : : const_iterator (STL/CLR)

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

liste : : const_reference (STL/CLR)

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

liste : : const_reverse_iterator (STL/CLR)

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

liste : : difference_type (STL/CLR)

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

liste : : generic_container (STL/CLR)

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

liste : : generic_iterator (STL/CLR)

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

liste : : generic_reverse_iterator (STL/CLR)

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

liste : : generic_value (STL/CLR)

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

liste : : itérateur (STL/CLR)

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

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

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

liste : : reverse_iterator (STL/CLR)

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

liste : : size_type (STL/CLR)

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

liste : : value_type (STL/CLR)

Le type d'un élément.

Fonction membre

Description

liste : : assignez (STL/CLR)

Remplace tous les éléments.

liste : : DOS (STL/CLR)

Accède au dernier élément.

liste : : démarrez (STL/CLR)

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

liste : : espace libre (STL/CLR)

Supprime tous les éléments.

liste : : vide (STL/CLR)

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

liste : : fin (STL/CLR)

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

liste : : effacement (STL/CLR)

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

liste : : avant (STL/CLR)

Accède au premier élément.

liste : : insertion (STL/CLR)

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

liste : : liste (STL/CLR)

Construit un objet container.

liste : : fusion (STL/CLR)

Fusionne deux séquences contrôlées ordonnées.

liste : : pop_back (STL/CLR)

Supprime le dernier élément.

liste : : pop_front (STL/CLR)

Supprime le premier élément.

liste : : push_back (STL/CLR)

Ajoute un nouveau dernier élément.

liste : : push_front (STL/CLR)

Ajoute d'un nouveau d'élément.

liste : : rbegin (STL/CLR)

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

liste : : supprimez (STL/CLR)

Supprime un élément avec la valeur spécifiée.

liste : : remove_if (STL/CLR)

Supprime les éléments qui réussissent un test spécifique.

liste : : rend (STL/CLR)

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

liste : : redimensionnez (STL/CLR)

Change le nombre d'éléments.

liste : : inverse (STL/CLR)

Renverse la séquence contrôlée.

liste : : taille (STL/CLR)

Compte le nombre d'éléments.

liste : : tri (STL/CLR)

Ordonne la séquence contrôlée.

liste : : ajout (STL/CLR)

Liens de Restitches entre les nœuds.

liste : : échange (STL/CLR)

Échange le contenu de deux conteneurs.

liste : : to_array (STL/CLR)

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

liste : : unique (STL/CLR)

Supprime les éléments adjacents qui réussissent un test spécifié.

Propriété

Description

liste : : back_item (STL/CLR)

Accède au dernier élément.

liste : : front_item (STL/CLR)

Accède au premier élément.

Opérateur

Description

liste : : operator= (STL/CLR)

Remplace la séquence contrôlée.

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

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

operator< (liste) (STL/CLR)

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

operator<= (liste) (STL/CLR)

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

operator== (liste) (STL/CLR)

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

operator> (liste) (STL/CLR)

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

operator>= (liste) (STL/CLR)

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

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<Value>

Maintenir le conteneur générique.

Notes

L'objet alloue et libère du stockage pour la séquence qu'il contrôle comme des nœuds individuels dans une liste de liens bidirectionnelle. Cela réorganise les éléments en modifiant les liens entre les nœuds, jamais en copiant le contenu d'un nœud vers un autre. Cela signifie que vous pouvez insérer et supprimer des éléments librement sans déranger les éléments restants. Par conséquent, une liste est un bon candidat de conteneur sous-jacent de la classe de modèle queue (STL/CLR) ou la classe de modèle stack (STL/CLR).

Un objet list prend en charge les itérateurs bidirectionnels, ce qui signifie que vous pouvez passer aux éléments adjacents à partir d'un itérateur qui indique un élément dans la séquence contrôlée. Un nœud principal spécial correspond à l'itérateur retourné par liste : : fin (STL/CLR)(). Vous pouvez décrémenter l'itérateur pour atteindre le dernier élément de la séquence contrôlée, s'il est présent. Vous pouvez incrémenter un itérateur de liste pour atteindre le nœud principal, et il est alors égal à end(). Mais vous ne pouvez pas déréférencer l'itérateur retourné par end().

Notez que vous ne pouvez pas faire référence à une liste directement avec sa position numérique -- cela requiert un itérateur à accès aléatoire. Une liste n'est donc not utilisable comme conteneur sous-jacent de la classe de modèle priority_queue (STL/CLR).

Un itérateur de liste contient un descripteur vers son nœud associé à la liste, qui lui même contient un descripteur vers son conteneur associé. Vous pouvez utiliser les itérateurs uniquement avec leurs objets conteneurs associés. Un itérateur de liste reste valide à condition que le nœud associé dans la liste soit associé à une certaine liste. De plus, un itérateur valide est déréférencable -- vous pouvez l'utiliser pour accéder et modifier la valeur de l'élément qu'il indique -- sous réserve qu'il ne soit pas égal à end().

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 pas (not) ses éléments.

Configuration requise

En-tête : <cliext/list>

Espace de noms cliext

Voir aussi

Référence

deque (STL/CLR)

priority_queue (STL/CLR)

queue (STL/CLR)

stack (STL/CLR)

vector (STL/CLR)

Autres ressources

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