UNPKG

boost-react-native-bundle

Version:

Boost library as in https://sourceforge.net/projects/boost/files/boost/1.57.0/

320 lines (309 loc) 111 kB
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> <title>Class template unordered_multiset</title> <link rel="stylesheet" href="../../../doc/src/boostbook.css" type="text/css"> <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> <link rel="home" href="../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset"> <link rel="up" href="../unordered/reference.html#header.boost.unordered_set_hpp" title="Header &lt;boost/unordered_set.hpp&gt;"> <link rel="prev" href="unordered_set.html" title="Class template unordered_set"> <link rel="next" href="unordered_map.html" title="Class template unordered_map"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table cellpadding="2" width="100%"><tr> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../boost.png"></td> <td align="center"><a href="../../../index.html">Home</a></td> <td align="center"><a href="../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> <td align="center"><a href="../../../more/index.htm">More</a></td> </tr></table> <hr> <div class="spirit-nav"> <a accesskey="p" href="unordered_set.html"><img src="../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../unordered/reference.html#header.boost.unordered_set_hpp"><img src="../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../index.html"><img src="../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="unordered_map.html"><img src="../../../doc/src/images/next.png" alt="Next"></a> </div> <div class="refentry"> <a name="boost.unordered_multiset"></a><div class="titlepage"></div> <div class="refnamediv"> <h2><span class="refentrytitle">Class template unordered_multiset</span></h2> <p>boost::unordered_multiset &#8212; An unordered associative container that stores values. The same key can be stored multiple times. </p> </div> <h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2> <div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../unordered/reference.html#header.boost.unordered_set_hpp" title="Header &lt;boost/unordered_set.hpp&gt;">boost/unordered_set.hpp</a>&gt; </span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">,</span> <span class="keyword">typename</span> Hash <span class="special">=</span> <span class="identifier">boost</span><span class="special">::</span><span class="identifier">hash</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">&gt;</span><span class="special">,</span> <span class="keyword">typename</span> Pred <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">equal_to</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">&gt;</span><span class="special">,</span> <span class="keyword">typename</span> Alloc <span class="special">=</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">allocator</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">&gt;</span> <span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="unordered_multiset.html" title="Class template unordered_multiset">unordered_multiset</a> <span class="special">{</span> <span class="keyword">public</span><span class="special">:</span> <span class="comment">// <a class="link" href="unordered_multiset.html#boost.unordered_multisettypes">types</a></span> <span class="keyword">typedef</span> <span class="identifier">Value</span> <a name="boost.unordered_multiset.key_type"></a><span class="identifier">key_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">Value</span> <a name="boost.unordered_multiset.value_type"></a><span class="identifier">value_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">Hash</span> <a name="boost.unordered_multiset.hasher"></a><span class="identifier">hasher</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">Pred</span> <a name="boost.unordered_multiset.key_equal"></a><span class="identifier">key_equal</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">Alloc</span> <a name="boost.unordered_multiset.allocator_type"></a><span class="identifier">allocator_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">allocator_type</span><span class="special">::</span><span class="identifier">pointer</span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.pointer"><span class="identifier">pointer</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">allocator_type</span><span class="special">::</span><span class="identifier">const_pointer</span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.const_pointer"><span class="identifier">const_pointer</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">value_type</span><span class="special">&amp;</span> <a name="boost.unordered_multiset.reference"></a><span class="identifier">reference</span><span class="special">;</span> <span class="comment">// lvalue of value_type.</span> <span class="keyword">typedef</span> <span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <a name="boost.unordered_multiset.const_reference"></a><span class="identifier">const_reference</span><span class="special">;</span> <span class="comment">// const lvalue of value_type.</span> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.size_type"><span class="identifier">size_type</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.difference_type"><span class="identifier">difference_type</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.iterator"><span class="identifier">iterator</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.const_iterator"><span class="identifier">const_iterator</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.local_iterator"><span class="identifier">local_iterator</span></a><span class="special">;</span> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.const_local_iterator"><span class="identifier">const_local_iterator</span></a><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#boost.unordered_multisetconstruct-copy-destruct">construct/copy/destruct</a></span> <span class="keyword">explicit</span> <a class="link" href="unordered_multiset.html#idp157047856-bb"><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="identifier">size_type</span> <span class="special">=</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span><span class="special">,</span> <span class="identifier">hasher</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">hasher</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">key_equal</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">key_equal</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">allocator_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">allocator_type</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InputIterator<span class="special">&gt;</span> <a class="link" href="unordered_multiset.html#idp157060112-bb"><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="identifier">InputIterator</span><span class="special">,</span> <span class="identifier">InputIterator</span><span class="special">,</span> <span class="identifier">size_type</span> <span class="special">=</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span><span class="special">,</span> <span class="identifier">hasher</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">hasher</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">key_equal</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">key_equal</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">allocator_type</span> <span class="keyword">const</span><span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">allocator_type</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span> <a class="link" href="unordered_multiset.html#idp157074464-bb"><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="unordered_multiset.html#idp157078960-bb"><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">explicit</span> <a class="link" href="unordered_multiset.html#idp157085056-bb"><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="identifier">Allocator</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="unordered_multiset.html#idp157088256-bb"><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">Allocator</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="unordered_multiset.html#idp157092944-bb"><span class="special">~</span><span class="identifier">unordered_multiset</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="identifier">unordered_multiset</span><span class="special">&amp;</span> <a class="link" href="unordered_multiset.html#idp157094256-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">unordered_multiset</span><span class="special">&amp;</span> <a class="link" href="unordered_multiset.html#idp157099952-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">allocator_type</span> <a class="link" href="unordered_multiset.html#idp157106800-bb"><span class="identifier">get_allocator</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp157108240-bb">size and capacity</a></span> <span class="keyword">bool</span> <a class="link" href="unordered_multiset.html#idp157108800-bb"><span class="identifier">empty</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp302576624-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp302579856-bb"><span class="identifier">max_size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp302582448-bb">iterators</a></span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302583568-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="unordered_multiset.html#idp302584144-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302586288-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="unordered_multiset.html#idp302587184-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="unordered_multiset.html#idp302588928-bb"><span class="identifier">cbegin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="unordered_multiset.html#idp302590960-bb"><span class="identifier">cend</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp302593088-bb">modifiers</a></span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302593648-bb"><span class="identifier">emplace</span></a><span class="special">(</span><span class="identifier">Args</span><span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302607584-bb"><span class="identifier">emplace_hint</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">Args</span><span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302624016-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302632944-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">value_type</span><span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp302641872-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">value_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp311918960-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">value_type</span><span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InputIterator<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp311930096-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">InputIterator</span><span class="special">,</span> <span class="identifier">InputIterator</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp311941200-bb"><span class="identifier">erase</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">)</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp311949232-bb"><span class="identifier">erase</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp311955552-bb"><span class="identifier">erase</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">const_iterator</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp311964528-bb"><span class="identifier">quick_erase</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp311972192-bb"><span class="identifier">erase_return_void</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp311979856-bb"><span class="identifier">clear</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp311984160-bb"><span class="identifier">swap</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp303524640-bb">observers</a></span> <span class="identifier">hasher</span> <a class="link" href="unordered_multiset.html#idp303525200-bb"><span class="identifier">hash_function</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">key_equal</span> <a class="link" href="unordered_multiset.html#idp303527056-bb"><span class="identifier">key_eq</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp303529072-bb">lookup</a></span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp303530192-bb"><span class="identifier">find</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="unordered_multiset.html#idp303532256-bb"><span class="identifier">find</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> CompatibleKey<span class="special">,</span> <span class="keyword">typename</span> CompatibleHash<span class="special">,</span> <span class="keyword">typename</span> CompatiblePredicate<span class="special">&gt;</span> <span class="identifier">iterator</span> <a class="link" href="unordered_multiset.html#idp303534592-bb"><span class="identifier">find</span></a><span class="special">(</span><span class="identifier">CompatibleKey</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">CompatibleHash</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">CompatiblePredicate</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> CompatibleKey<span class="special">,</span> <span class="keyword">typename</span> CompatibleHash<span class="special">,</span> <span class="keyword">typename</span> CompatiblePredicate<span class="special">&gt;</span> <span class="identifier">const_iterator</span> <a class="link" href="unordered_multiset.html#idp303541136-bb"><span class="identifier">find</span></a><span class="special">(</span><span class="identifier">CompatibleKey</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">CompatibleHash</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">CompatiblePredicate</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp303550768-bb"><span class="identifier">count</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">iterator</span><span class="special">,</span> <span class="identifier">iterator</span><span class="special">&gt;</span> <a class="link" href="unordered_multiset.html#idp303555248-bb"><span class="identifier">equal_range</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">pair</span><span class="special">&lt;</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">const_iterator</span><span class="special">&gt;</span> <a class="link" href="unordered_multiset.html#idp303557328-bb"><span class="identifier">equal_range</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp303562976-bb">bucket interface</a></span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp303563536-bb"><span class="identifier">bucket_count</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp303565872-bb"><span class="identifier">max_bucket_count</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp303568176-bb"><span class="identifier">bucket_size</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="unordered_multiset.html#idp303573616-bb"><span class="identifier">bucket</span></a><span class="special">(</span><span class="identifier">key_type</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">local_iterator</span> <a class="link" href="unordered_multiset.html#idp303579296-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="identifier">const_local_iterator</span> <a class="link" href="unordered_multiset.html#idp303581360-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">local_iterator</span> <a class="link" href="unordered_multiset.html#idp303587360-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="identifier">const_local_iterator</span> <a class="link" href="unordered_multiset.html#idp303685520-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">const_local_iterator</span> <a class="link" href="unordered_multiset.html#idp303690960-bb"><span class="identifier">cbegin</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">const_local_iterator</span> <a class="link" href="unordered_multiset.html#idp303696512-bb"><span class="identifier">cend</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp303702064-bb">hash policy</a></span> <span class="keyword">float</span> <a class="link" href="unordered_multiset.html#idp303702624-bb"><span class="identifier">load_factor</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="keyword">float</span> <a class="link" href="unordered_multiset.html#idp303704928-bb"><span class="identifier">max_load_factor</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp303707232-bb"><span class="identifier">max_load_factor</span></a><span class="special">(</span><span class="keyword">float</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp303710880-bb"><span class="identifier">rehash</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#idp303716048-bb"><span class="identifier">reserve</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="special">}</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp303720544-bb">Equality Comparisons</a></span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">,</span> <span class="keyword">typename</span> Hash<span class="special">,</span> <span class="keyword">typename</span> Pred<span class="special">,</span> <span class="keyword">typename</span> Alloc<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.operator==_idp303721104"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Hash</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">,</span> <span class="identifier">Alloc</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">unordered_multiset</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Hash</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">,</span> <span class="identifier">Alloc</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">,</span> <span class="keyword">typename</span> Hash<span class="special">,</span> <span class="keyword">typename</span> Pred<span class="special">,</span> <span class="keyword">typename</span> Alloc<span class="special">&gt;</span> <span class="keyword">bool</span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.operator!=_idp303732448"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Hash</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">,</span> <span class="identifier">Alloc</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">unordered_multiset</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Hash</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">,</span> <span class="identifier">Alloc</span><span class="special">&gt;</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="comment">// <a class="link" href="unordered_multiset.html#idp303743952-bb">swap</a></span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> Value<span class="special">,</span> <span class="keyword">typename</span> Hash<span class="special">,</span> <span class="keyword">typename</span> Pred<span class="special">,</span> <span class="keyword">typename</span> Alloc<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="unordered_multiset.html#boost.unordered_multiset.swap_idp303744512"><span class="identifier">swap</span></a><span class="special">(</span><span class="identifier">unordered_multiset</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Hash</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">,</span> <span class="identifier">Alloc</span><span class="special">&gt;</span><span class="special">&amp;</span><span class="special">,</span> <span class="identifier">unordered_multiset</span><span class="special">&lt;</span><span class="identifier">Value</span><span class="special">,</span> <span class="identifier">Hash</span><span class="special">,</span> <span class="identifier">Pred</span><span class="special">,</span> <span class="identifier">Alloc</span><span class="special">&gt;</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span></pre></div> <div class="refsect1"> <a name="idp518749680"></a><h2>Description</h2> <p><span class="bold"><strong>Template Parameters</strong></span> </p> <div class="informaltable"><table class="table"> <colgroup> <col> <col> </colgroup> <tbody> <tr> <td><span class="emphasis"><em>Value</em></span></td> <td> <code class="computeroutput">Value</code> must be <code class="computeroutput">Erasable</code> from the container (i.e. <code class="computeroutput">allocator_traits</code> can <code class="computeroutput">destroy</code> it). </td> </tr> <tr> <td><span class="emphasis"><em>Hash</em></span></td> <td>A unary function object type that acts a hash function for a <code class="computeroutput">Value</code>. It takes a single argument of type <code class="computeroutput">Value</code> and returns a value of type std::size_t.</td> </tr> <tr> <td><span class="emphasis"><em>Pred</em></span></td> <td>A binary function object that implements an equivalence relation on values of type <code class="computeroutput">Value</code>. A binary function object that induces an equivalence relation on values of type <code class="computeroutput">Value</code>. It takes two arguments of type <code class="computeroutput">Value</code> and returns a value of type bool.</td> </tr> <tr> <td><span class="emphasis"><em>Alloc</em></span></td> <td>An allocator whose value type is the same as the container's value type.</td> </tr> </tbody> </table></div> <p>The elements are organized into buckets. Keys with the same hash code are stored in the same bucket and elements with equivalent keys are stored next to each other.</p> <p>The number of buckets can be automatically increased by a call to insert, or as the result of calling rehash.</p> <div class="refsect2"> <a name="idp518764672"></a><h3> <a name="boost.unordered_multisettypes"></a><code class="computeroutput">unordered_multiset</code> public types</h3> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">allocator_type</span><span class="special">::</span><span class="identifier">pointer</span> <a name="boost.unordered_multiset.pointer"></a><span class="identifier">pointer</span><span class="special">;</span></p> <p> <code class="computeroutput">value_type*</code> if <code class="computeroutput">allocator_type::pointer</code> is not defined. </p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="keyword">typename</span> <span class="identifier">allocator_type</span><span class="special">::</span><span class="identifier">const_pointer</span> <a name="boost.unordered_multiset.const_pointer"></a><span class="identifier">const_pointer</span><span class="special">;</span></p> <p> <code class="computeroutput">boost::pointer_to_other&lt;pointer, value_type&gt;::type</code> if <code class="computeroutput">allocator_type::const_pointer</code> is not defined. </p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a name="boost.unordered_multiset.size_type"></a><span class="identifier">size_type</span><span class="special">;</span></p> <p>An unsigned integral type.</p> <p>size_type can represent any non-negative value of difference_type.</p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a name="boost.unordered_multiset.difference_type"></a><span class="identifier">difference_type</span><span class="special">;</span></p> <p>A signed integral type.</p> <p>Is identical to the difference type of iterator and const_iterator.</p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a name="boost.unordered_multiset.iterator"></a><span class="identifier">iterator</span><span class="special">;</span></p> <p>A constant iterator whose value type is value_type. </p> <p>The iterator category is at least a forward iterator.</p> <p>Convertible to const_iterator.</p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a name="boost.unordered_multiset.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span></p> <p>A constant iterator whose value type is value_type. </p> <p>The iterator category is at least a forward iterator.</p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a name="boost.unordered_multiset.local_iterator"></a><span class="identifier">local_iterator</span><span class="special">;</span></p> <p>An iterator with the same value type, difference type and pointer and reference type as iterator.</p> <p>A local_iterator object can be used to iterate through a single bucket.</p> </li> <li class="listitem"> <p> <span class="keyword">typedef</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span> <a name="boost.unordered_multiset.const_local_iterator"></a><span class="identifier">const_local_iterator</span><span class="special">;</span></p> <p>A constant iterator with the same value type, difference type and pointer and reference type as const_iterator.</p> <p>A const_local_iterator object can be used to iterate through a single bucket.</p> </li> </ol></div> </div> <div class="refsect2"> <a name="idp518816128"></a><h3> <a name="boost.unordered_multisetconstruct-copy-destruct"></a><code class="computeroutput">unordered_multiset</code> public construct/copy/destruct</h3> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> <pre class="literallayout"><span class="keyword">explicit</span> <a name="idp157047856-bb"></a><span class="identifier">unordered_multiset</span><span class="special">(</span><span class="identifier">size_type</span> n <span class="special">=</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span><span class="special">,</span> <span class="identifier">hasher</span> <span class="keyword">const</span><span class="special">&amp;</span> hf <span class="special">=</span> <span class="identifier">hasher</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">key_equal</span> <span class="keyword">const</span><span class="special">&amp;</span> eq <span class="special">=</span> <span class="identifier">key_equal</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">allocator_type</span> <span class="keyword">const</span><span class="special">&amp;</span> a <span class="special">=</span> <span class="identifier">allocator_type</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre> <p>Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0.</p> <div class="variablelist"><table border="0" class="variablelist compact"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody> <tr> <td><p><span class="term">Postconditions:</span></p></td> <td><code class="computeroutput"><a class="link" href="unordered_multiset.html#idp302576624-bb">size</a>() == 0</code></td> </tr> <tr> <td><p><span class="term">Requires:</span></p></td> <td><p>If the defaults are used, <code class="computeroutput">hasher</code>, <code class="computeroutput">key_equal</code> and <code class="computeroutput">allocator_type</code> need to be <code class="computeroutput">DefaultConstructible</code>. </p></td> </tr> </tbody> </table></div> </li> <li class="listitem"> <pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InputIterator<span class="special">&gt;</span> <a name="idp157060112-bb"></a><span class="identifier">unordered_multiset</span><span class="special">(</span><span class="identifier">InputIterator</span> f<span class="special">,</span> <span class="identifier">InputIterator</span> l<span class="special">,</span> <span class="identifier">size_type</span> n <span class="special">=</span> <span class="emphasis"><em><span class="identifier">implementation</span><span class="special">-</span><span class="identifier">defined</span></em></span><span class="special">,</span> <span class="identifier">hasher</span> <span class="keyword">const</span><span class="special">&amp;</span> hf <span class="special">=</span> <span class="identifier">hasher</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">key_equal</span> <span class="keyword">const</span><span class="special">&amp;</span> eq <span class="special">=</span> <span class="identifier">key_equal</span><span class="special">(</span><span class="special">)</span><span class="special">,</span> <span class="identifier">allocator_type</span> <span class="keyword">const</span><span class="special">&amp;</span> a <span class="special">=</span> <span class="identifier">allocator_type</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre> <p>Constructs an empty container with at least n buckets, using hf as the hash function, eq as the key equality predicate, a as the allocator and a maximum load factor of 1.0 and inserts the elements from [f, l) into it.</p> <div class="variablelist"><table border="0" class="variablelist compact"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody><tr> <td><p><span class="term">Requires:</span></p></td> <td><p>If the defaults are used, <code class="computeroutput">hasher</code>, <code class="computeroutput">key_equal</code> and <code class="computeroutput">allocator_type</code> need to be <code class="computeroutput">DefaultConstructible</code>. </p></td> </tr></tbody> </table></div> </li> <li class="listitem"> <pre class="literallayout"><a name="idp157074464-bb"></a><span class="identifier">unordered_multiset</span><span class="special">(</span><span class="identifier">unordered_multiset</span> <span class="keyword">const</span><span class="special">&amp;</span><span class="special">)</span><span class="special">;</span></pre> <p>The copy constructor. Copies the contained elements, hash function, predicate, maximum load factor and allocator.</p> <p>If <code class="computeroutput">Allocator::select_on_container_copy_construction</code> exists and has the right signature, the allocator will be constructed from its result.</p> <div class="variablelist"><table border="0" class="variablelist compact"> <colgroup> <col align="left" valign="top"> <col> </colgroup> <tbody><tr> <td><p><span class="term">Requires:</span></p></td> <td><p><code class="computeroutput">value_type</code> is copy