Namespaces
Variants

std::unordered_map<Key,T,Hash,KeyEqual,Allocator>:: bucket

From cppreference.net

size_type bucket ( const Key & key ) const ;
(1) (depuis C++11)
template < typename K >
size_type bucket ( const K & x ) const ;
(2) (depuis C++26)
1) Renvoie l'indice du compartiment pour la clé key . Les éléments (s'il y en a) avec des clés équivalentes à key se trouvent toujours dans ce compartiment.
2) Retourne l'indice du compartiment pour la clé qui compare équivalent à la valeur x . Les éléments (s'il y en a) avec des clés qui comparent équivalentes à x se trouvent toujours dans ce compartiment. Cette surcharge participe à la résolution de surcharge seulement si Hash et KeyEqual sont tous deux transparents . Cela suppose qu'un tel Hash est invocable avec à la fois le type K et le type Key , et que le KeyEqual est transparent, ce qui, ensemble, permet d'appeler cette fonction sans construire une instance de Key .

La valeur retournée n'est valide que pour les instances du conteneur pour lesquelles bucket_count() retourne la même valeur (par exemple, rehash() invalide les valeurs précédemment obtenues).

Le comportement n'est pas défini si bucket_count() est zéro.

Table des matières

Paramètres

key - la valeur de la clé à examiner
x - une valeur de tout type pouvant être comparée de manière transparente avec une clé

Valeur de retour

Index du compartiment pour la clé demandée.

Complexité

Constante.

Notes

Macro de test de fonctionnalité Valeur Std Fonctionnalité
__cpp_lib_associative_heterogeneous_insertion 202311L (C++26) Surcharges hétérogènes pour les fonctions membres restantes dans les conteneurs associatifs ordonnés et non ordonnés . ( 2 )

Exemple

Voir aussi

renvoie le nombre d'éléments dans un bucket spécifique
(fonction membre publique)