mirror of
https://github.com/berkeleydb/libdb.git
synced 2024-11-17 01:26:25 +00:00
381 lines
14 KiB
HTML
381 lines
14 KiB
HTML
<?xml version="1.0" encoding="UTF-8" standalone="no"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml">
|
||
<head>
|
||
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
|
||
<title>Chapter 6. Db_multimap</title>
|
||
<link rel="stylesheet" href="apiReference.css" type="text/css" />
|
||
<meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
|
||
<link rel="start" href="index.html" title="Berkeley DB C++ Standard Template Library API Reference" />
|
||
<link rel="up" href="index.html" title="Berkeley DB C++ Standard Template Library API Reference" />
|
||
<link rel="prev" href="stldb_mapoperator_ueq.html" title="operator!=" />
|
||
<link rel="next" href="stldb_multimaperase.html" title="erase" />
|
||
</head>
|
||
<body>
|
||
<div xmlns="" class="navheader">
|
||
<div class="libver">
|
||
<p>Library Version 11.2.5.2</p>
|
||
</div>
|
||
<table width="100%" summary="Navigation header">
|
||
<tr>
|
||
<th colspan="3" align="center">Chapter 6.
|
||
Db_multimap </th>
|
||
</tr>
|
||
<tr>
|
||
<td width="20%" align="left"><a accesskey="p" href="stldb_mapoperator_ueq.html">Prev</a> </td>
|
||
<th width="60%" align="center"> </th>
|
||
<td width="20%" align="right"> <a accesskey="n" href="stldb_multimaperase.html">Next</a></td>
|
||
</tr>
|
||
</table>
|
||
<hr />
|
||
</div>
|
||
<div class="chapter" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h2 class="title"><a id="db_multimap"></a>Chapter 6.
|
||
Db_multimap </h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>This class is the combination of std::multimap and hash_multimap. </p>
|
||
<p>By setting database handles as DB_BTREE or DB_HASH type respectively, you will be using an equivalent of std::multimap or hash_multimap respectively. Database(dbp) and environment(penv) handle requirement: The dbp handle must meet the following requirement: 1. Database type should be DB_BTREE or DB_HASH. 2. Either DB_DUP or DB_DUPSORT flag must be set. Note that so far Berkeley DB does not allow DB_DUPSORT be set and the database is storing identical key/data pairs, i.e. we can't store two (1, 2), (1, 2) pairs into a database D with DB_DUPSORT flag set, but only can do so with DB_DUP flag set; But we can store a (1, 2) pair and a (1, 3) pair into D with DB_DUPSORT flag set. So if your data set allows DB_DUPSORT flag, you should set it to gain a lot of performance promotion. 3. No DB_RECNUM flag set. 4. No DB_TRUNCATE specified in database open flags. 5. DB_THREAD must be set if you are sharing the database handle across multiple threads directly, or indirectly by sharing the container object across multiple threads. </p>
|
||
<h4><a id="id3603046"></a>
|
||
See Also
|
||
</h4>
|
||
<p> </p>
|
||
<p><a class="link" href="db_container.html" title="Chapter 3. Db_container">db_container</a>
|
||
<a class="link" href="db_map.html" title="Chapter 5. Db_map">db_map</a>
|
||
</p>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="id3600718"></a>
|
||
Class Template Parameters</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3603524"></a>
|
||
kdt</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The key data type. </p>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3600574"></a>
|
||
ddt</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The data data type. <a class="link" href="db_multimap.html" title="Chapter 6. Db_multimap">db_multimap</a>
|
||
stores key/data pairs. </p>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3603773"></a>
|
||
value_type_sub</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>Do not specify anything if ddt type is a class/struct type; Otherwise, specify ElementHolder<ddt> to it. </p>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3603866"></a>
|
||
iterator_t</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>Never specify anything to this type parameter. It is only used internally. </p>
|
||
</div>
|
||
</div>
|
||
<h4><a id="id3604061"></a> Public Members </h4>
|
||
<div class="informaltable">
|
||
<table border="1" width="80%">
|
||
<colgroup>
|
||
<col />
|
||
<col />
|
||
</colgroup>
|
||
<thead>
|
||
<tr>
|
||
<th>Member</th>
|
||
<th>Description</th>
|
||
</tr>
|
||
</thead>
|
||
<tbody>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="db_multimap.html#stldb_multimapinsert" title="insert">insert</a>
|
||
</td>
|
||
<td>
|
||
<p>Range insertion. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimaperase.html" title="erase">erase</a>
|
||
</td>
|
||
<td>
|
||
<p>Erase elements by key. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapequal_range.html" title="equal_range">equal_range</a>
|
||
</td>
|
||
<td>
|
||
<p>Find the range within which all keys equal to specified key x. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapequal_range_N.html" title="equal_range_N">equal_range_N</a>
|
||
</td>
|
||
<td>
|
||
<p>Find equal range and number of key/data pairs in the range. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapcount.html" title="count">count</a>
|
||
</td>
|
||
<td>
|
||
<p>Count the number of key/data pairs having specified key x. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapupper_bound.html" title="upper_bound">upper_bound</a>
|
||
</td>
|
||
<td>
|
||
<p>Find the least key greater than x. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapdb_multimap.html" title="db_multimap">db_multimap</a>
|
||
</td>
|
||
<td>
|
||
<p>Constructor. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapdstr_db_multimap.html" title="~db_multimap">~db_multimap</a>
|
||
</td>
|
||
<td>
|
||
</td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapoperator_assign.html" title="operator=">operator=</a>
|
||
</td>
|
||
<td>
|
||
<p>Container content assignment operator. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapswap.html" title="swap">swap</a>
|
||
</td>
|
||
<td>
|
||
<p>Swap content with another multimap container. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapoperator_eq.html" title="operator==">operator==</a>
|
||
</td>
|
||
<td>
|
||
<p>Returns whether the two containers have identical content. </p> </td>
|
||
</tr>
|
||
<tr>
|
||
<td>
|
||
<a class="xref" href="stldb_multimapoperator_ueq.html" title="operator!=">operator!=</a>
|
||
</td>
|
||
<td>
|
||
<p>Container unequality comparison operator. </p> </td>
|
||
</tr>
|
||
</tbody>
|
||
</table>
|
||
</div>
|
||
<h4><a id="id3604024"></a>
|
||
Group</h4>
|
||
<p>
|
||
<a class="xref" href="dbstl_containers.html" title="Chapter 2. Dbstl Container Classes">
|
||
Dbstl Container Classes </a>
|
||
</p>
|
||
<p>
|
||
</p>
|
||
<div class="sect1" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h2 class="title" style="clear: both"><a id="stldb_multimapinsert"></a>insert</h2>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="stldb_multimapinsert_details"></a>Function Details</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<pre class="programlisting">
|
||
void insert(InputIterator first,
|
||
InputIterator last)
|
||
</pre>
|
||
<p>Range insertion. </p>
|
||
<p>Insert a range [first, last) of key/data pairs into this container. </p>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3604051"></a>Parameters</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect4" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h5 class="title"><a id="id3604507"></a>last</h5>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The open boundary of the range. </p>
|
||
</div>
|
||
<div class="sect4" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h5 class="title"><a id="id3604539"></a>first</h5>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The closed boundary of the range. </p>
|
||
</div>
|
||
</div>
|
||
<pre class="programlisting">
|
||
void insert(const_iterator &first,
|
||
const_iterator &last)
|
||
</pre>
|
||
<p>Range insertion. </p>
|
||
<p>Insert a range [first, last) of key/data pairs into this container. </p>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3604546"></a>Parameters</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect4" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h5 class="title"><a id="id3604550"></a>last</h5>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The open boundary of the range. </p>
|
||
</div>
|
||
<div class="sect4" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h5 class="title"><a id="id3604564"></a>first</h5>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The closed boundary of the range. </p>
|
||
</div>
|
||
</div>
|
||
<pre class="programlisting">
|
||
iterator insert(const value_type &x)
|
||
</pre>
|
||
<p>Insert a single key/data pair if the key is not in the container. </p>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3604486"></a>Parameters</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="sect4" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h5 class="title"><a id="id3604571"></a>x</h5>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>The key/data pair to insert. </p>
|
||
</div>
|
||
</div>
|
||
<div class="sect3" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h4 class="title"><a id="id3601345"></a>Return Value</h4>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>A pair P, if insert OK, i.e. the inserted key wasn't in the container, P.first will be the iterator sitting on the inserted key/data pair, and P.second is true; otherwise P.first is an invalid iterator and P.second is false. </p>
|
||
</div>
|
||
</div>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="id3600456"></a>Group: Insert Functions</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="simplesect" lang="en" xml:lang="en">
|
||
<div class="titlepage"></div>
|
||
<p><a class="ulink" href="http://www.cplusplus.com/reference/stl/multimap/insert/" target="_top">http://www.cplusplus.com/reference/stl/multimap/insert/</a> </p>
|
||
</div>
|
||
<p>
|
||
</p>
|
||
</div>
|
||
<div class="sect2" lang="en" xml:lang="en">
|
||
<div class="titlepage">
|
||
<div>
|
||
<div>
|
||
<h3 class="title"><a id="id3604052"></a>Class</h3>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<p>
|
||
<a class="link" href="db_multimap.html" title="Chapter 6. Db_multimap">db_multimap</a>
|
||
</p>
|
||
</div>
|
||
</div>
|
||
</div>
|
||
<div class="navfooter">
|
||
<hr />
|
||
<table width="100%" summary="Navigation footer">
|
||
<tr>
|
||
<td width="40%" align="left"><a accesskey="p" href="stldb_mapoperator_ueq.html">Prev</a> </td>
|
||
<td width="20%" align="center"> </td>
|
||
<td width="40%" align="right"> <a accesskey="n" href="stldb_multimaperase.html">Next</a></td>
|
||
</tr>
|
||
<tr>
|
||
<td width="40%" align="left" valign="top">operator!= </td>
|
||
<td width="20%" align="center">
|
||
<a accesskey="h" href="index.html">Home</a>
|
||
</td>
|
||
<td width="40%" align="right" valign="top"> erase</td>
|
||
</tr>
|
||
</table>
|
||
</div>
|
||
</body>
|
||
</html>
|