Partager via


insert_iterator, classe

Décrit un adaptateur d'itérateur qui répond aux exigences d'un itérateur de sortie. Elle insère, plutôt que remplace, des éléments dans une séquence et fournit ainsi une sémantique différente de la sémantique de remplacement fournie par les itérateurs de la séquence C++ et les conteneurs associatifs. La classe insert_iterator est mise en modèle sur le type de conteneur qui est adapté.

template <class Container> class insert_iterator;

Paramètres

  • Container
    Type de conteneur dans lequel des éléments doivent être insérés par un insert_iterator.

Notes

Le conteneur de type Conteneur doit être conforme aux spécifications d'un conteneur de taille variable et posséder une fonction membre d'insertion de deux arguments dont les paramètres sont de type Container::iterator et Container::value_type et qui retourne un type Container::iterator. La séquence STL (Standard Template Library) et les conteneurs associatifs triés sont conformes à ces spécifications et peuvent être adaptés pour être utilisés avec des objets insert_iterator. Pour les conteneurs associatifs, l'argument de position est traité comme un indice, lequel peut améliorer ou dégrader les performances selon sa qualité. Un insert_iterator doit toujours être initialisé avec son conteneur.

Constructeurs

insert_iterator

Construit un insert_iterator qui insère un élément à une position spécifiée dans un conteneur.

Typedef

container_type

Type qui représente le conteneur dans lequel une insertion générale doit être effectuée.

référence

Type qui fournit une référence à un élément dans une séquence contrôlée par le conteneur associé.

Opérateurs

operator*

Opérateur de suppression de référence utilisé pour implémenter l'expression de l'itérateur de sortie *i = x pour une insertion générale.

operator++

Incrémente le insert_iterator à l'emplacement suivant où une valeur peut être stockée.

operator=

Opérateur d'assignation servant à implémenter l'expression de l'itérateur de sortie *i = x pour une insertion générale.

Configuration requise

En-tête : <iterator>

Espace de noms : std

Voir aussi

Référence

<iterator>

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

Bibliothèque STL (Standard Template Library)