Partager via


deque Class

Le deque de conteneur de séquence bibliothèque STL (Standard Template Library) organise les éléments d'un type donné dans un agencement linéaire et, tout comme les vecteurs, autoriser l'accès aléatoire rapide à n'importe quel élément et efficace d'insertion et de suppression à l'arrière du conteneur.Toutefois, à la différence d'un vecteur, la classe deque supporte également efficace insertion et la suppression à l'avant du conteneur.

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

Paramètres

  • Tapez
    Type de données d'élément doivent être stockées dans le deque.

  • Allocator
    Le type qui représente l'objet allocateur stockée qui encapsule les détails sur l'allocation et la désallocation de mémoire le deque.Cet argument est facultatif, et la valeur par défaut est allocateur <Type>.

Notes

Le choix du type de conteneur doit reposer en général du type de recherche et insertion requises par l'application.Vecteurs doit être le conteneur par défaut pour gérer une séquence lors de l'accès aléatoire à n'importe quel élément est une préoccupation majeure et les insertions ou suppressions d'éléments sont uniquement nécessaires à la fin d'une séquence.Les performances de le liste conteneur est supérieure lorsque efficaces insertions et suppressions (en temps constant) à n'importe quel emplacement dans la séquence est une préoccupation majeure.Ces opérations dans le milieu de la séquence nécessitent des copies de l'élément et les affectations proportionnelles au nombre d'éléments dans la séquence (temps linéaire).

Réallocation deque se produit lorsqu'une fonction membre doit insérer ou supprimer des éléments de la séquence :

  • Si un élément est inséré dans une séquence vide, ou si un élément est effacé pour laisser une séquence vide, puis les itérateurs précédemment retourné par commencer et fin deviennent non valides.

  • Si un élément est inséré à la première position de la deque, puis tous les itérateurs, mais aucune référence, qui désignent les éléments existants ne devenue non valides.

  • Si un élément est inséré à la fin de la deque, puis fin et tous les itérateurs, mais aucune référence, qui désignent les éléments existants deviennent non valides.

  • Si un élément est effacé à l'avant du deque, uniquement que l'itérateur et références à l'élément effacée deviennent non valides.

  • Si le dernier élément est effacé de la fin de la deque, uniquement cet itérateur vers l'élément final et les références à l'élément effacée deviennent non valides.

Dans le cas contraire, insertion ou suppression d'un élément invalide tous les itérateurs et des références.

22a9t119.collapse_all(fr-fr,VS.110).gifConstructeurs

deque

Construit un deque. plusieurs constructeurs sont fournies pour définir le contenu de la nouvelle deque de différentes manières : vide ; chargé avec un nombre spécifié d'éléments vides ; contenu déplacé ou copié à partir d'un autre deque; contenu copié ou déplacé à l'aide d'un itérateur ; et un seul élément copié dans le deque_Count fois.Certains des constructeurs permettent à l'aide d'un allocator pour créer des éléments.

22a9t119.collapse_all(fr-fr,VS.110).gifTypedef

allocator_type

Un type qui représente le allocator de classe pour le deque objet.

const_iterator

Un type qui fournit un itérateur d'accès aléatoire qui peut accéder et lire des éléments dans le deque en tant queconst

const_pointer

Un type qui fournit un pointeur vers un élément dans un deque comme uneconst.

const_reference

Un type qui fournit une référence à un élément dans un deque de lecture et d'autres opérations comme uneconst.

const_reverse_iterator

Un type qui fournit un itérateur d'accès aléatoire qui peut accéder et lire des éléments dans le deque comme const.Le deque est affiché dans l'ordre inverse.Pour plus d'informations, consultez reverse_iterator Class.

difference_type

Un type qui fournit la différence entre deux itérateurs vive qui font référence aux éléments de la même deque.

itérateur

Un type qui fournit un itérateur d'accès aléatoire qui peut lire ou modifier n'importe quel élément dans une deque.

pointer

Un type qui fournit un pointeur vers un élément dans un deque.

Référence

Un type qui fournit une référence à un élément stocké dans un deque.

reverse_iterator

Un type qui fournit un itérateur d'accès aléatoire qui peut lire ou modifier un élément dans un deque.Le deque est affiché dans l'ordre inverse.

size_type

Un type qui détermine le nombre d'éléments dans un deque.

Value_type

Un type qui représente le type de données stocké dans un deque.

22a9t119.collapse_all(fr-fr,VS.110).gifFonctions membres

assign

Efface les éléments à partir d'un deque et copie d'une nouvelle séquence d'éléments à la cible deque.

at

Renvoie une référence à l'élément à un emplacement spécifié dans la deque.

back

Renvoie une référence au dernier élément de la deque.

begin

Retourne un itérateur d'accès aléatoire adressage au premier élément dans la deque.

deque::cbegin

Retourne un itérateur const au premier élément dans la deque.

deque::cend

Renvoie une vive const itérateur qui pointe juste après la fin de la deque.

clear

Efface tous les éléments d'un deque.

deque::crbegin

Retourne un itérateur const accès aléatoire au premier élément dans un deque affiché dans l'ordre inverse.

deque::crend

Retourne un itérateur const accès aléatoire au premier élément dans un deque affiché dans l'ordre inverse.

deque::emplace

Insère un élément construit en place dans le deque à une position spécifiée.

deque::emplace_back

Ajoute un élément construit en place à la fin de la deque.

deque::emplace_front

Ajoute un élément construit en place au début de la deque.

empty

Cette propriété renvoie true si la deque contient zéro élément, et false si elle contient un ou plusieurs éléments.

end

Retourne un itérateur d'accès aléatoire qui pointe juste après la fin de la deque.

Effacer

Supprime un élément ou une plage d'éléments dans un deque à partir de positions spécifiées.

front

Renvoie une référence au premier élément dans un deque.

get_allocator

Retourne une copie de la allocator objet qui est utilisé pour construire le deque.

Insérer

Insère un élément, plusieurs éléments ou une plage d'éléments dans le deque à une position spécifiée.

max_size

Retourne la longueur maximale possible de la deque.

pop_back

Efface l'élément à la fin de la deque.

pop_front

Efface l'élément au début de la deque.

push_back

Ajoute un élément à la fin de la deque.

push_front

Ajoute un élément au début de la deque.

rbegin

Retourne un itérateur d'accès aléatoire pour le premier élément dans une inversion deque.

rend

Retourne un itérateur d'accès aléatoire qui pointe juste après le dernier élément dans un texte inversé deque.

resize

Spécifie une nouvelle taille pour un deque.

deque::shrink_to_fit

Rejets d'excédent de capacité.

taille

Renvoie le nombre d'éléments dans le deque.

swap

Échange les éléments de deux deques.

22a9t119.collapse_all(fr-fr,VS.110).gifOpérateurs

operator[]

Renvoie une référence à la deque élément à une position spécifiée.

deque::operator=

Remplace les éléments de la deque avec une copie d'un autre deque.

Configuration requise

En-tête: <deque>

Voir aussi

Référence

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

Modèles Standard

Autres ressources

<deque> membres

membres de classe de deque