std::vector::vector
De cppreference.com
<tbody>
</tbody>
explicit vector( const Allocator& alloc = Allocator() ); |
(1) | |
explicit vector( size_type count, {{#pad:|6}} const T& value = T(), {{#pad:|6}} const Allocator& alloc = Allocator()); vector( size_type count, {{#pad:|6}} const T& value, {{#pad:|6}} const Allocator& alloc = Allocator()); |
(2) | (avant C++11) (depuis C++11) |
explicit vector( size_type count ); |
(3) | (depuis C++11) |
template< class InputIt > vector( InputIt first, InputIt last, {{#pad:|6}} const Allocator& alloc = Allocator() ); |
(4) | |
vector( const vector& other ); |
(5) | |
vector( const vector& other, const Allocator& alloc ); |
(5) | (depuis C++11) |
vector( vector&& other ) |
(6) | (depuis C++11) |
vector( vector&& other, const Allocator& alloc ); |
(6) | (depuis C++11) |
vector( std::initializer_list<T> init, {{#pad:|6}} const Allocator& alloc = Allocator() ); |
(7) | (depuis C++11) |
Construit un nouveau conteneur depuis différentes sources de données et en utilisant éventuellement un allocateur alloc.
1) Constructeur par défaut. Construit un conteneur vide.
2) Construit le conteneur avec
count copies de value.3) Construit le conteneur avec
count instances de T initialisées par valeur (constructeur par défaut pour les classes). Aucune copie n'est effectuée.4) Construit le conteneur avec les éléments de
[first, last).5) Constructeur par copie. Construit le conteneur avec la copie des éléments de
other. Si alloc n'est pas fourni, l'allocateur est obtenue en appelant std::allocator_traits<allocator_type>::select_on_copy_construction(other).6) Constructeur par déplacement. Construit le conteneur avec le contenu de
other en déplaçant les éléments. Si alloc n'est pas fourni, il est obtenu en utilisant le constructeur par déplacement de l'allocateur appartenant à other.7) Construit le conteneur avec le contenu de la liste d'initialisation
init.Paramètres
| alloc | - | allocateur à utiliser pour toutes les allocations mémoire de ce conteneur |
| count | - | la taille du conteneur |
| value | - | la valeur d'initialisation des éléments du conteneur |
| first, last | - | la plage d'éléments à copier |
| other | - | un autre conteneur utilisé pour initialiser les éléments du conteneur |
| init | - | une liste d'initialisation utilisée pour initialiser les éléments du conteneur |
| Type requirements | ||
-InputIt must meet the requirements of InputIterator.
| ||
Complexité
1) Constant
2-3) Linéaire selon
count4) Linéaire selon la distance entre
first et last5) Linéaire selon la taille de
other6) Constant. Si
alloc est donné et alloc != other.get_allocator(), alors linéaire.7) Linéaire selon la taille de
initExemple
#include <vector>
#include <string>
int main()
{
// Liste d'initialisation c++11:
std::vector<std::string> mots1 {"le", "frogurt", "est", "aussi", "maudit"};
// mots2 == mots1
std::vector<std::string> mots2(mots1.begin(), mots1.end());
// mots3 == mots1
std::vector<std::string> mots3(mots1);
// mots4 contient : {"Mo", "Mo", "Mo", "Mo", "Mo"}
std::vector<std::string> mots4(5, "Mo");
return 0;
}
Voir aussi
|
Attribue les valeurs dans le conteneur | |
| Attribue les valeurs dans le conteneur (fonction membre publique) | |