Espaces de noms
Variantes
Actions

<div class="t-tr-text">Concepts C + +:<div class="t-tr-dropdown"><div><div><div class="t-tr-dropdown-arrow-border"></div><div class="t-tr-dropdown-arrow"></div><div class="t-tr-dropdown-h">Original:</div><div class="t-tr-dropdown-orig">C++ concepts:</div><div class="t-tr-dropdown-notes">The text has been machine-translated via [http://translate.google.com Google Translate].<br/> You can help to correct and verify the translation. Click [http://en.cppreference.com/w/Cppreference:MachineTranslations here] for instructions.</div></div></div></div></div> Container

De cppreference.com
< cpp‎ | concept

 
 
C + + concepts
De base
Original:
Basic
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Bibliothèque échelle
Original:
Library-Wide
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Récipient
Original:
Container
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Éléments de conteneurs
Original:
Container Elements
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Iterator
Original:
Iterator
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Nombres aléatoires
Original:
Random Numbers
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Simultanéité
Original:
Concurrency
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
BasicLockable (C++11)
Lockable (C++11)
TimedLockable (C++11)
Mutex (C++11)
TimedMutex (C++11)
Autre
Original:
Other
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
 
Un Container est un objet utilisé pour stocker d'autres objets et en prenant soin de la gestion de la mémoire utilisée par les objets qu'il contient .
Original:
A Container is an object used to store other objects and taking care of the management of the memory used by the objects it contains.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

Sommaire

[modifier]Exigences

  • Type de conteneur C
    Original:
    C Container type
    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.
  • Type d'élément T
    Original:
    T Element type
    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.
  • a, b Objets de C type
    Original:
    a, b Objects of type C
    The text has been machine-translated via Google Translate.
    You can help to correct and verify the translation. Click here for instructions.

[modifier]Types

nametypenotes
value_typeTDestructible
referencelvalue of T
const_referenceconst lvalue of T
iteratoriterator pointing to TForwardIterator
convertible to const_iterator
const_iteratorconst iterator pointing to TForwardIterator
difference_typesigned integer must be the same as iterator_traits::difference_type for iterator and const_iterator
size_typeunsigned integerlarge enough to represent all positive values of difference_type

[modifier]Méthodes et les opérateurs

expressionreturn typesemanticsconditionscomplexity
C();CCreates an empty container Post: u.empty() == trueConstant
C(a)CCreate a copy of aPre: T must be CopyInsertable
Post: a == X(a)
Linear
a = bC&All elements of a are destroyed or move assigned to elements of bPost: a == bLinear
(&a)->~C()voidDestroy all elements and free all memoryLinear
a.begin()(const_)iteratorIterator to the first elementConstant
a.end()(const_)iteratorIterator to one passed the last elementConstant
a.cbegin() (depuis C++11)const_iteratorconst_cast<const C&>(a).begin()Constant
a.cend() (depuis C++11)const_iteratorconst_cast<const C&>(a).end()Constant
a == b convertible to bool Makes C EqualityComparablePre: T must be EqualityComparable Linear
a != b convertible to bool !(a==b) Linear
a.swap(b) void exchanges the values of a and b Constant[1][2]
swap(a,b) void a.swap(b) Constant[1]
a.size() size_type distance(a.begin(),a.end()) Constant[2]
a.max_size() size_type b.size() where b is the largest possible container Constant[2]
a.empty() convertible to bool a.begin()== a.end() Constant
notes
  1. 1,0 et 1,1 (depuis C++11) Linear for std::array
  2. 2,0, 2,1 et 2,2 (avant C++11) Not strictly constant

[modifier]De données de conteneurs courses

Les implémentations ne sont pas tenus de fournir une garantie pour les modifications de séquence réentrance - il n'est pas sûr de push_back et lire begin simultanément. Cependant, il est nécessaire d'éviter les concurrences de données lorsque le contenu de l'objet contenu dans des éléments différents de la même séquence sont modifiés en même temps (sauf pour vector<bool>). En d'autres termes, pour un vector<int> avec une taille supérieure à 1, x[1] = 5 et *x.begin() = 10 n'aboutira pas à une race de données .
Original:
Implementations are not required to provide any reentrancy guarantee for sequence modifications - it is not safe to push_back and read begin concurrently. However, it is required to avoid data races when the contents of the contained object in different elements of the same sequence are modified concurrently (except for vector<bool>). In other words, for a vector<int> with size greater than 1, x[1] = 5 and *x.begin() = 10 will not result in a data race.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.
Ces fonctions doivent également être considérés const: begin, end, rbegin, rend, front, back, data, find, lower_bound, upper_bound, equal_range, at, et, sauf dans AssociativeContainer et UnorderedAssociativeContainer, operator[]. L'appel à ces fonctions en même temps ne donnera pas lieu à une course de données .
Original:
These functions must also be considered const: begin, end, rbegin, rend, front, back, data, find, lower_bound, upper_bound, equal_range, at, and, except in AssociativeContainer and UnorderedAssociativeContainer, operator[]. Calling any of these functions concurrently will not result in a data race.
The text has been machine-translated via Google Translate.
You can help to correct and verify the translation. Click here for instructions.

[modifier]D'autres concepts

C
T
close