std::unordered_multiset<Key,Hash,KeyEqual,Allocator>:: count
From cppreference.net
<
cpp
|
container
|
unordered multiset
|
size_type count
(
const
Key
&
key
)
const
;
|
(1) | (depuis C++11) |
|
template
<
class
K
>
size_type count ( const K & x ) const ; |
(2) | (depuis C++20) |
1)
Retourne le nombre d'éléments dont la clé est égale à l'argument spécifié
key
.
2)
Retourne le nombre d'éléments dont la clé est équivalente à l'argument spécifié
x
. Cette surcharge participe à la résolution de surcharge seulement si
Hash
et
KeyEqual
sont tous deux
transparents
. Cela suppose qu'un tel
Hash
peut être appelé avec les types
K
et
Key
, et que le
KeyEqual
est transparent, ce qui, ensemble, permet d'appeler cette fonction sans construire une instance de
Key
.
Table des matières |
Paramètres
| key | - | valeur clé des éléments à compter |
| x | - | une valeur de tout type pouvant être comparée de manière transparente avec une clé |
Valeur de retour
1)
Nombre d'éléments avec la clé
key
.
2)
Nombre d'éléments dont la clé est équivalente à
x
.
Complexité
linéaire dans le nombre d'éléments avec la clé key en moyenne, pire cas linéaire dans la taille du conteneur.
Notes
| Macro de test de fonctionnalité | Valeur | Std | Fonctionnalité |
|---|---|---|---|
__cpp_lib_generic_unordered_lookup
|
201811L
|
(C++20) | Recherche de comparaison hétérogène dans les conteneurs associatifs non ordonnés , surcharge (2) |
Exemple
Exécuter ce code
#include <algorithm> #include <iostream> #include <unordered_set> int main() { std::unordered_multiset set{2, 7, 1, 8, 2, 8, 1, 8, 2, 8}; std::cout << "The set is:\n"; for (int e : set) std::cout << e << ' '; const auto [min, max] = std::ranges::minmax(set); std::cout << "\nNumbers [" << min << ".." << max << "] frequency:\n"; for (int i{min}; i <= max; ++i) std::cout << i << ':' << set.count(i) << "; "; std::cout << '\n'; }
Sortie possible :
The set is: 8 8 8 8 1 1 7 2 2 2 Numbers [1..8] frequency: 1:2; 2:3; 3:0; 4:0; 5:0; 6:0; 7:1; 8:4;
Voir aussi
|
trouve l'élément avec une clé spécifique
(fonction membre publique) |
|
|
(C++20)
|
vérifie si le conteneur contient un élément avec une clé spécifique
(fonction membre publique) |
|
retourne la plage d'éléments correspondant à une clé spécifique
(fonction membre publique) |