 deduction guides for st8b7c:f320:99b9:690f:4595:cd17:293a:c069unordered_multiset
    Defined in header <unordered_set>         template<class InputIt,
         class Hash = st8b7c:f320:99b9:690f:4595:cd17:293a:c069hash<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type>,
         class Pred = st8b7c:f320:99b9:690f:4595:cd17:293a:c069equal_to<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type>,
         class Alloc = st8b7c:f320:99b9:690f:4595:cd17:293a:c069allocator<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type>>
unordered_multiset(InputIt, InputIt,
         typename /*see below*/8b7c:f320:99b9:690f:4595:cd17:293a:c069size_type = /*see below*/,
         Hash = Hash(), Pred = Pred(), Alloc = Alloc())
  -> unordered_multiset<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type, Hash, Pred, Alloc>;
  (1)   (since C++17)     template<class T,
         class Hash = st8b7c:f320:99b9:690f:4595:cd17:293a:c069hash<T>,
         class Pred = st8b7c:f320:99b9:690f:4595:cd17:293a:c069equal_to<T>,
         class Alloc = st8b7c:f320:99b9:690f:4595:cd17:293a:c069allocator<T>>
unordered_multiset(st8b7c:f320:99b9:690f:4595:cd17:293a:c069initializer_list<T>,
         typename /*see below*/8b7c:f320:99b9:690f:4595:cd17:293a:c069size_type = /*see below*/,
         Hash = Hash(), Pred = Pred(), Alloc = Alloc())
  -> unordered_multiset<T, Hash, Pred, Alloc>;
  (2)   (since C++17)     template<class InputIt, class Alloc>
unordered_multiset(InputIt, InputIt, typename /*see below*/8b7c:f320:99b9:690f:4595:cd17:293a:c069size_type, Alloc)
  -> unordered_multiset<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type,
              st8b7c:f320:99b9:690f:4595:cd17:293a:c069hash<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type>,
              st8b7c:f320:99b9:690f:4595:cd17:293a:c069equal_to<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type>,
              Alloc>;
  (3)   (since C++17)     template<class InputIt, class Hash, class Alloc>
unordered_multiset(InputIt, InputIt, typename /*see below*/8b7c:f320:99b9:690f:4595:cd17:293a:c069size_type, Hash, Alloc)
  -> unordered_multiset<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type, Hash,
             st8b7c:f320:99b9:690f:4595:cd17:293a:c069equal_to<typename st8b7c:f320:99b9:690f:4595:cd17:293a:c069iterator_traits<InputIt>8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type>, Allocator>;
  (4)   (since C++17)     template<class T, class Allocator>
unordered_multiset(st8b7c:f320:99b9:690f:4595:cd17:293a:c069initializer_list<T>, typename /*see below*/8b7c:f320:99b9:690f:4595:cd17:293a:c069size_type, Allocator)
  -> unordered_multiset<T, st8b7c:f320:99b9:690f:4595:cd17:293a:c069hash<T>, st8b7c:f320:99b9:690f:4595:cd17:293a:c069equal_to<T>, Alloc>;
  (5)   (since C++17)     template<class T, class Hash, class Alloc>
unordered_multiset(st8b7c:f320:99b9:690f:4595:cd17:293a:c069initializer_list<T>, typename /*see below*/8b7c:f320:99b9:690f:4595:cd17:293a:c069size_type, Hash, Alloc)
  -> unordered_multiset<T, Hash, st8b7c:f320:99b9:690f:4595:cd17:293a:c069equal_to<T>, Alloc>;
  (6)   (since C++17)    These deduction guides are provided for unordered_multiset to allow deduction from an iterator range (overloads (1,3,4)) and st8b7c:f320:99b9:690f:4595:cd17:293a:c069initializer_list (overloads (2,5.6)). This overload participates in overload resolution only if InputIt satisfies LegacyInputIterator, Alloc satisfies Allocator, neither Hash nor Pred satisfy Allocator, Hash is not an integral type.
Note: the extent to which the library determines that a type does not satisfy LegacyInputIterator is unspecified, except that as a minimum integral types do not qualify as input iterators. Likewise, the extent to which it determines that a type does not satisfy Allocator is unspecified, except that as a minimum the member type Allo8b7c:f320:99b9:690f:4595:cd17:293a:c069value_type must exist and the expression st8b7c:f320:99b9:690f:4595:cd17:293a:c069declval<Alloc&>().allocate(st8b7c:f320:99b9:690f:4595:cd17:293a:c069size_t{}) must be well-formed when treated as an unevaluated operand.
The size_type parameter type in these guides refers to the size_type member type of the type deduced by the deduction guide.
 Example  #include <unordered_set>
int main() {
   st8b7c:f320:99b9:690f:4595:cd17:293a:c069unordered_multiset s = {1,2,3,4};            // guide #2 deduces st8b7c:f320:99b9:690f:4595:cd17:293a:c069unordered_multiset<int>
   st8b7c:f320:99b9:690f:4595:cd17:293a:c069unordered_multiset s2(s.begin(), s.end());   // guide #1 deduces st8b7c:f320:99b9:690f:4595:cd17:293a:c069unordered_multiset<int>
}  

    
{'path': 'public/docs/cpp/container/unordered_multiset/deduction_guides.html', 'source': 'DevDocs.IO'}