Partager via


hash_set::hash_set

Notes

Cette API est obsolète.L'alternative est unordered_set, classe.

Construisez un hash_set qui est vide ou qui est une copie de l'ensemble ou d'une partie d'un autre hash_set.

hash_set( );
explicit hash_set(
    const Traits& Comp
);
hash_set(
    const Traits& Comp,
    const Allocator& Al
);
hash_set(
    const hash_set<Key, Traits, Allocator>& Right
);
hash_set(
    hash_set&& Right
);
hash_set(
     initializer_list<Type> IList
);
hash_set(
      initializer_list<Type> IList, 
     const Compare& Comp
);
hash_set(
      initializer_list<value_type> IList, 
     const Compare& Comp, 
     const Allocator& Al
); 
template<class InputIterator>
    hash_set(
        InputIterator First,
        InputIterator Last
    );
template<class InputIterator>
    hash_set(
        InputIterator First,
        InputIterator Last,
        const Traits& Comp
    );
template<class InputIterator>
    hash_set(
        InputIterator First,
        InputIterator Last,
        const Traits& Comp,
        const Allocator& Al
    );

Paramètres

Paramètre

Description

Al

La classe d'allocateur de stockage à utiliser pour cet objet hash_set, qui est Allocator.

Comp

La fonction de comparaison du type const Traits utilisée pour trier les éléments dans un hash_set, qui est hash_compare.

Right

La hash_set dans la laquelle le hash_set généré doit être une copie.

First

Position du premier élément dans la plage d'éléments à copier.

Last

Position du premier élément au delà de la plage d'éléments à copier.

Notes

Tous les constructeurs stockent un type d'objet d'allocation qui gère le stockage de mémoire pour hash_set et qui peut ensuite être retourné en appelant hash_set::get_allocator. Le paramètre d'allocateur est souvent omis dans les déclarations de classe et les macros de prétraitement utilisées pour substituer d'autres allocateurs.

Tous les constructeurs initialisent hash_sets.

Tous les constructeurs stockent un objet de fonction de type Traits qui est utilisé pour établir un ordre entre les clés du hash_set et qui peut ensuite être retourné en appelant hash_set::key_comp. Pour plus d'informations concernant Traits, consultez la rubrique hash_set, classe.

Les trois premiers constructeurs crées un hash_set initial vide, le deuxième spécifie le type de fonction de comparaison (Comp) à utiliser pour établir l'ordre des éléments et le troisième spécifie explicitement le type d'allocateur (Al) à utiliser. Le mot clé explicit supprime certains genres de conversion de type automatique.

Les quatrième et cinquième constructeurs spécifient une copie de hash_set Right.

Les derniers sixième, le septième, et les huitième constructeurs utilisent un initializer_list des éléments.

Les trois derniers constructeurs copient la plage [First, Last) de hash_set avec augmentation de l'explicité en spécifiant le type de fonction de comparaison de classe comparent et allocateur.

Le huitième constructeur déplace hash_set Right.

Le réel ordre d'éléments dans un conteneur défini hash_set dépend de la fonction de hachage, la fonction de commande et la taille actuelle de la table de hachage et ne peut pas, en général, être prévu comme il serait possible avec le conteneur défini, où il a été déterminé par la seule fonction de commande.

Configuration requise

Header: <hash_set>

Espace de noms : stdext

Voir aussi

Référence

hash_set, classe

Bibliothèque STL (Standard Template Library)