unordered_set::unordered_set
Construit un objet container.
unordered_set(
const unordered_set& Right
);
explicit unordered_set(
size_type bucket_count = N0,
const Hash& Hash = Hash(),
const Comp& Comp = Comp(),
const Allocator& Al = Alloc()
);
unordered_set(
unordered_set&& Right
);
unordered_set(
initializer_list<Type> IList
);
unordered_set(
initializer_list<Type> IList,
size_type bucket_count
);
unordered_set(
initializer_list<Type> IList,
size_type bucket_count,
const Hash& Hash
);
unordered_set(
initializer_list<Type> IList,
size_type bucket_count,
const Hash& Hash,
const Comp& Comp
);
unordered_set(
initializer_list<Type> IList,
size_type bucket_count,
const Hash& Hash,
const Comp& Comp,
const Allocator& Al
);
template<class InputIterator>
unordered_set(
InputIterator first,
InputIterator last,
size_type bucket_count = N0,
const Hash& Hash = Hash(),
const Comp& Comp = Comp(),
const Allocator& Al = Alloc());
Paramètres
Paramètre |
Description |
InputIterator |
Type d'itérateur. |
Al |
L'objet d'allocation à enregistrer. |
Comp |
L'objet de fonction de comparaison à enregistrer. |
Hash |
L'objet de fonction de hachage à enregistrer. |
bucket_count |
Le nombre minimal de compartiments. |
Right |
Le conteneur à copier. |
IList |
L'initializer_list contenant les éléments à copier. |
Notes
Le premier constructeur spécifie une copie de la séquence contrôlée par Right. Le deuxième constructeur spécifie une séquence contrôlée vide. Le troisième constructeur spécifie une copie de la séquence en déplaçant le Right Du quatrième jusqu'au huitième les constructeurs utilisent un initializer_list pour spécifier les éléments à copier. Le neuvième constructeur insère la séquence de valeurs d'élément [first, last).
Tous les constructeurs initialisent également plusieurs valeurs stockées. Pour le constructeur de copie, les valeurs sont obtenues à partir de Right. Sinon :
Le nombre minimal de compartiments est l'argument bucket_count, le cas échéant ; sinon c'est une valeur par défaut décrite ici comme valeur implémentation définie N0.
L'objet de fonction de hachage est l'argument Hash, s'il existe ; sinon c'est Hash().
L'objet de fonction de comparaison est l'argument Comp, s'il existe ; sinon c'est Comp().
L'objet d'allocation est l'argument Al, le cas échéant ; sinon, il est Alloc().
Exemple
Code
/ std_tr1__unordered_set__unordered_set_construct.cpp
// compile with: /EHsc
#include <unordered_set>
#include <iostream>
using namespace std;
typedef unordered_set<char> Myset;
int main()
{
Myset c1;
c1.insert('a');
c1.insert('b');
c1.insert('c');
// display contents " [c] [b] [a]"
for (auto& c : c1){
cout << " [" << c << "]";
}
cout << endl;
Myset c2(8,
hash<char>(),
equal_to<char>(),
allocator<pair<const char, int> >());
c2.insert('d');
c2.insert('e');
c2.insert('f');
// display contents " [f] [e] [d]"
for (auto& c : c2){
cout << " [" << c << "]";
}
cout << endl;
Myset c3(c1.begin(),
c1.end(),
8,
hash<char>(),
equal_to<char>(),
allocator<pair<const char, int> >());
// display contents " [c] [b] [a]"
for (auto& c : c3){
cout << " [" << c << "]";
}
cout << endl;
Myset c4(move(c3));
// display contents " [c] [b] [a]"
for (auto& c : c4){
cout << " [" << c << "]";
}
cout << endl;
Myset c5{ { 'a', 'b', 'c' } };
for (auto& c : c5){
cout << " [" << c << "]";
}
cout << endl;
}
Sortie
[a] [b] [c]
[d] [e] [f]
[a] [b] [c]
[a] [b] [c]
Configuration requise
Header: <unordered_set>
Espace de noms : std