Partager via


Classe concurrent_vector

La classe concurrent_vector est une classe de conteneur de séquences qui autorise l'accès aléatoire à tout élément. Il vérifie l'accès concurrentiel ajout, d'accès aux éléments, d'accès aux itérateurs, et opérations de parcours d'itérateur.

template<
   typename _Ty,
   class _Ax
>
class concurrent_vector: protected details::_Allocator_base<_Ty, _Ax>, private details::_Concurrent_vector_base_v4;

Paramètres

  • _Ty
    Type de données des éléments à stocker dans le vecteur.

  • _Ax
    Type qui représente l'objet d'allocation stocké qui contient des détails sur l'allocation et la désallocation de mémoire pour le vecteur simultané. Cet argument est facultatif et la valeur par défaut est allocator<_Ty**>**.

Membres

Typedefs publics

Nom

Description

allocator_type

Type qui représente la classe d'allocateur pour le vecteur simultané.

const_iterator

Type qui fournit un itérateur à accès aléatoire capable de lire un élément const dans un vecteur simultané.

const_pointer

Type qui fournit un pointeur vers un élément const dans un vecteur simultané.

const_reference

Type qui fournit une référence à un élément const stocké dans un vecteur simultané pour la lecture et l'exécution d'opérations const.

const_reverse_iterator

Type qui fournit un itérateur à accès aléatoire capable de lire tout élément const dans le vecteur simultané.

difference_type

Type qui fournit la distance signée entre deux éléments dans un vecteur simultané.

iterator

Type qui fournit un itérateur à accès aléatoire capable de lire tout élément dans un vecteur simultané. La modification d'un élément à l'aide de l'itérateur n'est pas sécurisée du point de vue de l'accès concurrentiel.

pointer

Type qui fournit un pointeur vers un élément dans un vecteur simultané.

reference

Type qui fournit une référence à un élément stocké dans un vecteur simultané.

reverse_iterator

Type qui fournit un itérateur à accès aléatoire capable de lire tout élément dans un vecteur simultané inversé. La modification d'un élément à l'aide de l'itérateur n'est pas sécurisée du point de vue de l'accès concurrentiel.

size_type

Type qui compte le nombre d'éléments dans un vecteur simultané.

value_type

Type qui représente le type de données stocké dans un vecteur simultané.

Constructeurs publics

Nom

Description

concurrent_vector::concurrent_vector, constructeur

Surchargé. Construit un vecteur simultané.

concurrent_vector::~concurrent_vector, destructeur

Efface tous les éléments et détruit ce vecteur simultané.

Méthodes publiques

Nom

Description

concurrent_vector::assign, méthode

Surchargé. Efface les éléments du vecteur simultané et lui attribue _N copies de _Item, ou des valeurs spécifiées par la plage d'itérateurs [_Begin, _End). Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::at, méthode

Surchargé. Fournit l'accès à l'élément à l'index donné dans le vecteur simultané. Cette méthode est protégée contre l'accès concurrentiel pour les opérations de lecture de même que pendant l'augmentation du vecteur, à condition que vous ayez vérifié que la valeur _Index est inférieure à la taille du vecteur simultané.

concurrent_vector::back, méthode

Surchargé. Retourne une référence ou une référence const au dernier élément dans le vecteur simultané. Si le vecteur simultané est vide, la valeur de retour n'est pas définie. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::begin, méthode

Surchargé. Retourne un itérateur de type iterator ou const_iterator au début du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::capacity, méthode

Retourne la taille maximale que le vecteur simultané peut atteindre sans devoir allouer plus de mémoire. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::cbegin, méthode

Retourne un itérateur de type const_iterator au début du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::cend, méthode

Retourne un itérateur de type const_iterator à la fin du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::clear, méthode

Efface tous les éléments dans le vecteur simultané. Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::crbegin, méthode

Retourne un itérateur de type const_reverse_iterator au début du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::crend, méthode

Retourne un itérateur de type const_reverse_iterator à la fin du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::empty, méthode

Teste si le vecteur simultané est vide au moment de l'appel de la méthode. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::end, méthode

Surchargé. Retourne un itérateur de type iterator ou const_iterator à la fin du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::front, méthode

Surchargé. Retourne une référence ou une référence const au premier élément dans le vecteur simultané. Si le vecteur simultané est vide, la valeur de retour n'est pas définie. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::get_allocator, méthode

Retourne une copie de l'allocateur utilisé pour construire le vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::grow_by, méthode

Surchargé. Augmente ce vecteur simultané par les éléments _Delta. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::grow_to_at_least, méthode

Augmente ce vecteur simultané jusqu'à ce qu'il ait au moins _N éléments. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::max_size, méthode

Retourne le nombre maximal d'éléments que le vecteur simultané peut contenir. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::push_back, méthode

Surchargé. Ajoute l'élément donné à la fin du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::rbegin, méthode

Surchargé. Retourne un itérateur de type reverse_iterator ou const_reverse_iterator au début du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::rend, méthode

Surchargé. Retourne un itérateur de type reverse_iterator ou const_reverse_iterator à la fin du vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::reserve, méthode

Alloue suffisamment d'espace pour augmenter le vecteur simultané jusqu'à la taille _N sans avoir à allouer plus de mémoire ultérieurement. Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::resize, méthode

Surchargé. Modifie la taille du vecteur simultané en lui attribuant la taille demandée, en supprimant ou en ajoutant des éléments si nécessaire. Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::shrink_to_fit, méthode

Condense la représentation interne du vecteur simultané pour réduire la fragmentation et optimiser l'utilisation de la mémoire. Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::size, méthode

Retourne le nombre d'éléments dans le vecteur simultané. Cette méthode est sécurisée du point de vue de l'accès concurrentiel.

concurrent_vector::swap, méthode

Échange le contenu de deux vecteurs simultanés. Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

Opérateurs publics

Nom

Description

concurrent_vector::operator[], opérateur

Surchargé. Fournit l'accès à l'élément à l'index donné dans le vecteur simultané. Cette méthode est protégée contre l'accès concurrentiel pour les opérations de lecture de même que pendant l'augmentation du vecteur, à condition que vous ayez vérifié que la valeur _Index est inférieure à la taille du vecteur simultané.

concurrent_vector::operator=, opérateur

Surchargé. Assigne le contenu d'un autre objet concurrent_vector à celui-ci. Cette méthode n'est pas sécurisée du point de vue de l'accès concurrentiel.

Notes

Pour plus d'informations sur la classe concurrent_vector, consultez Conteneurs et objets parallèles.

Hiérarchie d'héritage

_Concurrent_vector_base_v4

_Allocator_base

concurrent_vector

Configuration requise

En-tête : concurrent_vector.h

Accès concurrentiel del'espace de noms :

Voir aussi

Référence

concurrency, espace de noms

Concepts

Conteneurs et objets parallèles