Constructors

Synopses

Declared in <bslstl_unorderedmultimap.h>

Create an empty unordered multimap.

Create an unordered multimap as a copy of original.

Create an unordered multimap by moving from original.

Create an empty unordered multimap using basicAllocator.

explicit
unordered_multimap(ALLOCATOR const& basicAllocator);

Create an empty unordered multimap with buckets and allocator.

unordered_multimap(
    size_type initialNumBuckets,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap by moving from original using basicAllocator.

unordered_multimap(
    BloombergLP::bslmf::MovableRef<unordered_multimap> original,
    ALLOCATOR const& basicAllocator);

Create a copy of original using basicAllocator.

unordered_multimap(
    unordered_multimap const& original,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from values using basicAllocator.

template<class = void>
requires bsl::IsStdAllocator_v<ALLOCATOR>
unordered_multimap(
    std::initializer_list<value_type> values,
    ALLOCATOR const& basicAllocator);

Create an empty unordered multimap with hash and allocator.

unordered_multimap(
    size_type initialNumBuckets,
    HASH const& hashFunction,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from [first, last)] using basicAllocator.

template<class INPUT_ITERATOR>
unordered_multimap(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from range using basicAllocator.

template<class RANGE>
unordered_multimap(
    std::from_range_t tag,
    RANGE&& range,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from values with bucket count and allocator.

template<class = void>
requires bsl::IsStdAllocator_v<ALLOCATOR>
unordered_multimap(
    std::initializer_list<value_type> values,
    size_type initialNumBuckets,
    ALLOCATOR const& basicAllocator);

Create an empty unordered multimap with the specified options.

explicit
unordered_multimap(
    size_type initialNumBuckets,
    HASH const& hashFunction = HASH(),
    EQUAL const& keyEqual = EQUAL(),
    ALLOCATOR const& basicAllocator = ALLOCATOR());

Create an unordered multimap from [first, last)] with buckets and allocator.

template<class INPUT_ITERATOR>
unordered_multimap(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    size_type initialNumBuckets,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from range with bucket count and allocator.

template<class RANGE>
unordered_multimap(
    std::from_range_t tag,
    RANGE&& range,
    size_type initialNumBuckets,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from values with hash and allocator.

template<
    class = void,
    class = void>
requires std::is_invocable_v<HASH, const KEY &> && bsl::IsStdAllocator_v<ALLOCATOR>
unordered_multimap(
    std::initializer_list<value_type> values,
    size_type initialNumBuckets,
    HASH const& hashFunction,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from [first, last)] with hash and allocator.

template<class INPUT_ITERATOR>
unordered_multimap(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    size_type initialNumBuckets,
    HASH const& hashFunction,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from range with hash and allocator.

template<class RANGE>
unordered_multimap(
    std::from_range_t tag,
    RANGE&& range,
    size_type initialNumBuckets,
    HASH const& hashFunction,
    ALLOCATOR const& basicAllocator);

Create an unordered multimap from the values initializer list.

template<
    class = void,
    class = void,
    class = void>
requires std::is_invocable_v<HASH, const KEY &> && std::is_invocable_v<EQUAL, const KEY &, const KEY &> && bsl::IsStdAllocator_v<ALLOCATOR>
unordered_multimap(
    std::initializer_list<value_type> values,
    size_type initialNumBuckets = 0,
    HASH const& hashFunction = HASH(),
    EQUAL const& keyEqual = EQUAL(),
    ALLOCATOR const& basicAllocator = ALLOCATOR());

Create an unordered multimap from the range [first, last)].

template<class INPUT_ITERATOR>
unordered_multimap(
    INPUT_ITERATOR first,
    INPUT_ITERATOR last,
    size_type initialNumBuckets = 0,
    HASH const& hashFunction = HASH(),
    EQUAL const& keyEqual = EQUAL(),
    ALLOCATOR const& basicAllocator = ALLOCATOR());

Create an unordered multimap from the elements of range.

template<class RANGE>
unordered_multimap(
    std::from_range_t tag,
    RANGE&& range,
    size_type initialNumBuckets = 0,
    HASH const& hashFunction = HASH(),
    EQUAL const& keyEqual = EQUAL(),
    ALLOCATOR const& basicAllocator = ALLOCATOR());

Parameters

Name

Description

original

unordered multimap to copy

basicAllocator

allocator used to supply memory

initialNumBuckets

minimum initial number of buckets

values

initializer list of elements to insert

hashFunction

hash function for keys

first

beginning of the range to copy

last

end of the range to copy

tag

disambiguation tag for range construction

range

input range of key/value pairs to insert

keyEqual

key‐equality functor

Created with MrDocs