unordered_multiset() : unordered_multiset(
size_type(/*implementation-defined*/) ) {}
explicit unordered_multiset( size_type bucket_count, (1) (since
C++11)
const Hash& hash = Hash(),
const key_equal& equal = key_equal(),
const Allocator& alloc = Allocator() );
unordered_multiset( size_type bucket_count,
const Allocator& alloc )
: unordered_multiset(bucket_count, Hash(), key_equal(), alloc) {}
unordered_multiset( size_type bucket_count, (1) (since C++14)
const Hash& hash,
const Allocator& alloc )
: unordered_multiset(bucket_count, hash, key_equal(), alloc) {}
explicit unordered_multiset( const Allocator& alloc ); (1)
(since C++11)
template< class InputIt >
unordered_multiset( InputIt first, InputIt last,
size_type bucket_count = /*implementation-defined*/, (2) (since
C++11)
const Hash& hash = Hash(),
const key_equal& equal = key_equal(),
const Allocator& alloc = Allocator() );
template< class InputIt >
unordered_multiset( InputIt first, InputIt last,
size_type bucket_count, (2) (since C++14)
const Allocator& alloc )
: unordered_multiset(first, last,
bucket_count, Hash(), key_equal(), alloc) {}
template< class InputIt >
unordered_multiset( InputIt first, InputIt last,
size_type bucket_count,
const Hash& hash, (2) (since C++14)
const Allocator& alloc )
: unordered_multiset(first, last,
bucket_count, hash, key_equal(), alloc) {}
unordered_multiset( const unordered_multiset& other ); (3)
(since C++11)
unordered_multiset( const unordered_multiset& other, const (3)
(since C++11)
Allocator& alloc );
unordered_multiset( unordered_multiset&& other ); (4)
(since C++11)
unordered_multiset( unordered_multiset&& other, const Allocator&
(4) (since C++11)
alloc );
unordered_multiset( std::initializer_list<value_type> init,
size_type bucket_count = /*implementation-defined*/,
const Hash& hash = Hash(), (5) (since C++11)
const key_equal& equal = key_equal(),
const Allocator& alloc = Allocator() );
unordered_multiset( std::initializer_list<value_type> init,
size_type bucket_count,
const Allocator& alloc ) (5) (since C++14)
: unordered_multiset(init, bucket_count,
Hash(), key_equal(), alloc) {}
unordered_multiset( std::initializer_list<value_type> init,
size_type bucket_count,
const Hash& hash, (5) (since C++14)
const Allocator& alloc )
: unordered_multiset(init, bucket_count,
hash, key_equal(), alloc) {}
Constructs new container from a variety of data sources. Optionally uses user
supplied bucket_count as a minimal number of buckets to create, hash as the
hash
function, equal as the function to compare keys and alloc as the
allocator.
1) Constructs empty container. Sets max_load_factor() to 1.0. For the default
constructor, the number of buckets is implementation-defined.
2) constructs the container with the contents of the range [first, last).
Sets
max_load_factor() to 1.0.
3) copy constructor. Constructs the container with the copy of the contents
of
other, copies the load factor, the predicate, and the hash function as well.
If
alloc is not provided, allocator is obtained by calling
std::allocator_traits<allocator_type>::select_on_container_copy_construction(other.get_allocator()).
The template parameter Allocator is only deduced from the first (since C++23)
argument while used in class template argument deduction.
4) move constructor. Constructs the container with the contents of other
using move
semantics. If alloc is not provided, allocator is obtained by
move-construction from
the allocator belonging to other.
The template parameter Allocator is only deduced from the first (since C++23)
argument while used in class template argument deduction.
5) constructs the container with the contents of the initializer list init,
same as
unordered_multiset(init.begin(), init.end()).