std::unordered_multiset
From cppreference.com
                    
                                        
                    
                    
                                                            
                    |   Defined in header <unordered_set>
   | 
||
|   template<     class Key,  | 
(since C++11) | |
Unordered multiset is an associative container that contains set of possibly non-unique objects of type Key. Search, insertion, and removal have average constant-time complexity.
std::unordered_multiset meets the requirements of Container, AllocatorAwareContainer, UnorderedAssociativeContainer.
Contents | 
[edit] Member types
| Member type | Definition | 
| key_type | Key | 
| value_type | Key | 
| size_type | Unsigned integral type (usually size_t) | 
| difference_type | Signed integer type (usually ptrdiff_t) | 
| hasher | Hash | 
| key_equal | KeyEqual | 
| allocator_type | Allocator | 
| reference | value_type& | 
| const_reference | const value_type& | 
| pointer | std::allocator_traits<Allocator>::pointer | 
| const_pointer | std::allocator_traits<Allocator>::const_pointer | 
| iterator | ForwardIterator | 
| const_iterator | Constant forward iterator | 
| local_iterator |   An iterator type whose category, value, difference, pointer and reference types are the same as iterator. This iterator can be used to iterate through a single bucket but not across buckets  | 
| const_local_iterator |   An iterator type whose category, value, difference, pointer and reference types are the same as const_iterator. This iterator can be used to iterate through a single bucket but not across buckets  | 
[edit] Member functions
|   constructs the unordered_multiset  (public member function)  | |
|   destructs the unordered_multiset  (public member function)  | |
|    assigns values to the container   (public member function)  | |
|    returns the associated allocator   (public member function)  | |
 Iterators | |
|    returns an iterator to the beginning   (public member function)  | |
|    returns an iterator to the end   (public member function)  | |
 Capacity | |
|    checks whether the container is empty   (public member function)  | |
|    returns the number of elements   (public member function)  | |
|    returns the maximum possible number of elements   (public member function)  | |
 Modifiers | |
|    clears the contents   (public member function)  | |
|    inserts elements   (public member function)  | |
|    constructs element in-place   (public member function)  | |
|    constructs elements in-place using a hint   (public member function)  | |
|    erases elements   (public member function)  | |
|    swaps the contents   (public member function)  | |
 Lookup | |
|    returns the number of elements matching specific key   (public member function)  | |
|    finds element with specific key  (public member function)  | |
|    returns range of elements matching a specific key  (public member function)  | |
 Bucket interface | |
|    returns an iterator to the beginning of the specified bucket   (public member function)  | |
|    returns an iterator to the end of the specified bucket   (public member function)  | |
|    returns the number of buckets  (public member function)  | |
|    returns the maximum number of buckets  (public member function)  | |
|    returns the number of elements in specific bucket  (public member function)  | |
|    returns the bucket for specific key  (public member function)  | |
 Hash policy | |
|    returns average number of elements per bucket  (public member function)  | |
|    manages maximum average number of elements per bucket  (public member function)  | |
|    reserves at least the specified number of buckets. This regenerates the hash table. (public member function)  | |
|    reserves space for at least the specified number of elements. This regenerates the hash table. (public member function)  | |
 Observers | |
|    returns function used to hash the keys   (public member function)  | |
|    returns the function used to compare keys for equality   (public member function)  | |
[edit] Non-member functions
|    compares the values in the unordered_multiset   (function template)  | |
|    specializes the std::swap algorithm   (function template)  | |