std::vector::vector
De cppreference.com
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 diffrentes sources de donnes et en utilisant ventuellement un allocateur alloc.
1) Constructeur par dfaut. Construit un conteneur vide.
2) Construit le conteneur avec
count copies de value.3) Construit le conteneur avec
count instances de T initialises par valeur (constructeur par dfaut pour les classes). Aucune copie n'est effectue.4) Construit le conteneur avec les lments de
[first, last).5) Constructeur par copie. Construit le conteneur avec la copie des lments 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 dplacement. Construit le conteneur avec le contenu de
other en dplaant les lments. Si alloc n'est pas fourni, il est obtenu en utilisant le constructeur par dplacement de l'allocateur appartenant other.7) Construit le conteneur avec le contenu de la liste d'initialisation
init.Paramtres
| alloc | - | allocateur utiliser pour toutes les allocations mmoire de ce conteneur |
| count | - | la taille du conteneur |
| value | - | la valeur d'initialisation des lments du conteneur |
| first, last | - | la plage d'lments copier |
| other | - | un autre conteneur utilis pour initialiser les lments du conteneur |
| init | - | une liste d'initialisation utilise pour initialiser les lments du conteneur |
| Type requirements | ||
-InputIt must meet the requirements of InputIterator.
| ||
Complexit
1) Constant
2-3) Linaire selon
count4) Linaire selon la distance entre
first et last5) Linaire selon la taille de
other6) Constant. Si
alloc est donn et alloc != other.get_allocator(), alors linaire.7) Linaire 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) | |