2011-09-13 17:44:24 +00:00
<?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 >
2011-12-20 00:07:10 +00:00
< h4 > < a id = "id3603046" > < / a >
2011-09-13 17:44:24 +00:00
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 >
2011-12-20 00:07:10 +00:00
< h3 class = "title" > < a id = "id3600718" > < / a >
2011-09-13 17:44:24 +00:00
Class Template Parameters< / h3 >
< / div >
< / div >
< / div >
< div class = "sect3" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3603524" > < / a >
2011-09-13 17:44:24 +00:00
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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3600574" > < / a >
2011-09-13 17:44:24 +00:00
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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3603773" > < / a >
2011-09-13 17:44:24 +00:00
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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3603866" > < / a >
2011-09-13 17:44:24 +00:00
iterator_t< / h4 >
< / div >
< / div >
< / div >
< p > Never specify anything to this type parameter. It is only used internally. < / p >
< / div >
< / div >
2011-12-20 00:07:10 +00:00
< h4 > < a id = "id3604061" > < / a > Public Members < / h4 >
2011-09-13 17:44:24 +00:00
< 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 >
2011-12-20 00:07:10 +00:00
< h4 > < a id = "id3604024" > < / a >
2011-09-13 17:44:24 +00:00
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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3604051" > < / a > Parameters< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< div class = "sect4" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2011-12-20 00:07:10 +00:00
< h5 class = "title" > < a id = "id3604507" > < / a > last< / h5 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h5 class = "title" > < a id = "id3604539" > < / a > first< / h5 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3604546" > < / a > Parameters< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< div class = "sect4" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2011-12-20 00:07:10 +00:00
< h5 class = "title" > < a id = "id3604550" > < / a > last< / h5 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h5 class = "title" > < a id = "id3604564" > < / a > first< / h5 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3604486" > < / a > Parameters< / h4 >
2011-09-13 17:44:24 +00:00
< / div >
< / div >
< / div >
< div class = "sect4" lang = "en" xml:lang = "en" >
< div class = "titlepage" >
< div >
< div >
2011-12-20 00:07:10 +00:00
< h5 class = "title" > < a id = "id3604571" > < / a > x< / h5 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h4 class = "title" > < a id = "id3601345" > < / a > Return Value< / h4 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h3 class = "title" > < a id = "id3600456" > < / a > Group: Insert Functions< / h3 >
2011-09-13 17:44:24 +00:00
< / 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 >
2011-12-20 00:07:10 +00:00
< h3 class = "title" > < a id = "id3604052" > < / a > Class< / h3 >
2011-09-13 17:44:24 +00:00
< / 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 >