• Home
  • History
  • Annotate
  • Line#
  • Navigate
  • Raw
  • Download
  • only in /asuswrt-rt-n18u-9.0.0.4.380.2695/release/src-rt/router/db-4.8.30/docs/api_reference/STL/
1<?xml version="1.0" encoding="UTF-8" standalone="no"?>
2<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
3<html xmlns="http://www.w3.org/1999/xhtml">
4  <head>
5    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
6    <title>Chapter��5.�� Db_map</title>
7    <link rel="stylesheet" href="apiReference.css" type="text/css" />
8    <meta name="generator" content="DocBook XSL Stylesheets V1.73.2" />
9    <link rel="start" href="index.html" title="Berkeley DB C++ Standard Template Library API Reference" />
10    <link rel="up" href="index.html" title="Berkeley DB C++ Standard Template Library API Reference" />
11    <link rel="prev" href="stldb_vectorclear.html" title="clear" />
12    <link rel="next" href="stldb_mapdstr_db_map.html" title="~db_map" />
13  </head>
14  <body>
15    <div class="navheader">
16      <table width="100%" summary="Navigation header">
17        <tr>
18          <th colspan="3" align="center">Chapter��5.��
19 Db_map  </th>
20        </tr>
21        <tr>
22          <td width="20%" align="left"><a accesskey="p" href="stldb_vectorclear.html">Prev</a>��</td>
23          <th width="60%" align="center">��</th>
24          <td width="20%" align="right">��<a accesskey="n" href="stldb_mapdstr_db_map.html">Next</a></td>
25        </tr>
26      </table>
27      <hr />
28    </div>
29    <div class="chapter" lang="en" xml:lang="en">
30      <div class="titlepage">
31        <div>
32          <div>
33            <h2 class="title"><a id="db_map"></a>Chapter��5.��
34 Db_map  </h2>
35          </div>
36        </div>
37      </div>
38      <p><a class="link" href="db_map.html" title="Chapter��5.�� Db_map">db_map</a>
39 has identical methods to std::map and the semantics for each method is identical to its std::map counterpart, except that it stores data into underlying Berkeley DB btree or hash database. </p>
40      <p>Passing a database handle of btree or hash type creates a <a class="link" href="db_map.html" title="Chapter��5.�� Db_map">db_map</a>
41 equivalent to std::map and std::hashmap respectively. Database(dbp) and environment(penv) handle requirement(applies to all constructors in this class template): 0. The dbp is opened inside the penv environment. Either one of the two handles can be NULL. If dbp is NULL, an anonymous database is created by dbstl. 1. Database type of dbp should be DB_BTREE or DB_HASH. 2. No DB_DUP or DB_DUPSORT flag set in dbp. 3. No DB_RECNUM flag set in dbp. 4. No DB_TRUNCATE specified in dbp's database open flags. 5. DB_THREAD must be set if you are sharing the dbp across multiple threads directly, or indirectly by sharing the container object across multiple threads. </p>
42      <h4><a id="id1549655"></a>
43See Also
44</h4>
45      <p> </p>
46      <p><a class="link" href="db_container.html" title="Chapter��3.�� Db_container">db_container</a>
47 <a class="link" href="stldb_containerdb_container.html" title="db_container">db_container(Db*, DbEnv*)</a>
48 <a class="link" href="stldb_containerdb_container.html" title="db_container">db_container(const db_container&amp;)</a>
49 </p>
50      <div class="sect2" lang="en" xml:lang="en">
51        <div class="titlepage">
52          <div>
53            <div>
54              <h3 class="title"><a id="id1549700"></a>
55Class Template Parameters</h3>
56            </div>
57          </div>
58        </div>
59        <div class="sect3" lang="en" xml:lang="en">
60          <div class="titlepage">
61            <div>
62              <div>
63                <h4 class="title"><a id="id1549863"></a>
64kdt</h4>
65              </div>
66            </div>
67          </div>
68          <p>The key data type. </p>
69        </div>
70        <div class="sect3" lang="en" xml:lang="en">
71          <div class="titlepage">
72            <div>
73              <div>
74                <h4 class="title"><a id="id1549992"></a>
75ddt</h4>
76              </div>
77            </div>
78          </div>
79          <p>The data data type. <a class="link" href="db_map.html" title="Chapter��5.�� Db_map">db_map</a>
80 stores key/data pairs. </p>
81        </div>
82        <div class="sect3" lang="en" xml:lang="en">
83          <div class="titlepage">
84            <div>
85              <div>
86                <h4 class="title"><a id="id1550029"></a>
87value_type_sub</h4>
88              </div>
89            </div>
90          </div>
91          <p>Do not specify anything if ddt type is a class/struct type; Otherwise, specify ElementHolder&lt;ddt&gt; to it. </p>
92        </div>
93        <div class="sect3" lang="en" xml:lang="en">
94          <div class="titlepage">
95            <div>
96              <div>
97                <h4 class="title"><a id="id1549936"></a>
98iterator_t</h4>
99              </div>
100            </div>
101          </div>
102          <p>Never specify anything to this type parameter. It is only used internally. </p>
103        </div>
104      </div>
105      <h4><a id="id1549893"></a> Public Members </h4>
106      <div class="informaltable">
107        <table border="1" width="80%">
108          <colgroup>
109            <col />
110            <col />
111          </colgroup>
112          <thead>
113            <tr>
114              <th>Member</th>
115              <th>Description</th>
116            </tr>
117          </thead>
118          <tbody>
119            <tr>
120              <td>
121<a class="xref" href="db_map.html#stldb_mapdb_map" title="db_map">
122db_map
123</a>
124</td>
125              <td>
126   <p>Create a std::map/hash_map equivalent associative container. </p>        </td>
127            </tr>
128            <tr>
129              <td>
130<a class="xref" href="stldb_mapdstr_db_map.html" title="~db_map">
131~db_map
132</a>
133</td>
134              <td>
135   </td>
136            </tr>
137            <tr>
138              <td>
139<a class="xref" href="stldb_mapinsert.html" title="insert">
140insert
141</a>
142</td>
143              <td>
144   <p>Insert a single key/data pair if the key is not in the container. </p>        </td>
145            </tr>
146            <tr>
147              <td>
148<a class="xref" href="stldb_mapbegin.html" title="begin">
149begin
150</a>
151</td>
152              <td>
153   <p>Begin a read-write or readonly iterator which sits on the first key/data pair of the database. </p>        </td>
154            </tr>
155            <tr>
156              <td>
157<a class="xref" href="stldb_mapend.html" title="end">
158end
159</a>
160</td>
161              <td>
162   <p>Create an open boundary iterator. </p>        </td>
163            </tr>
164            <tr>
165              <td>
166<a class="xref" href="stldb_maprbegin.html" title="rbegin">
167rbegin
168</a>
169</td>
170              <td>
171   <p>Begin a read-write or readonly reverse iterator which sits on the first key/data pair of the database. </p>        </td>
172            </tr>
173            <tr>
174              <td>
175<a class="xref" href="stldb_maprend.html" title="rend">
176rend
177</a>
178</td>
179              <td>
180   <p>Create an open boundary iterator. </p>        </td>
181            </tr>
182            <tr>
183              <td>
184<a class="xref" href="stldb_mapis_hash.html" title="is_hash">
185is_hash
186</a>
187</td>
188              <td>
189   <p>Get container category. </p>        </td>
190            </tr>
191            <tr>
192              <td>
193<a class="xref" href="stldb_mapbucket_count.html" title="bucket_count">
194bucket_count
195</a>
196</td>
197              <td>
198   <p>Only for std::hash_map, return number of hash bucket in use. </p>        </td>
199            </tr>
200            <tr>
201              <td>
202<a class="xref" href="stldb_mapsize.html" title="size">
203size
204</a>
205</td>
206              <td>
207   <p>This function supports auto-commit. </p>        </td>
208            </tr>
209            <tr>
210              <td>
211<a class="xref" href="stldb_mapmax_size.html" title="max_size">
212max_size
213</a>
214</td>
215              <td>
216   <p>Get max size. </p>        </td>
217            </tr>
218            <tr>
219              <td>
220<a class="xref" href="stldb_mapempty.html" title="empty">
221empty
222</a>
223</td>
224              <td>
225   <p>Returns whether this container is empty. </p>        </td>
226            </tr>
227            <tr>
228              <td>
229<a class="xref" href="stldb_maperase.html" title="erase">
230erase
231</a>
232</td>
233              <td>
234   <p>Erase a key/data pair at specified position. </p>        </td>
235            </tr>
236            <tr>
237              <td>
238<a class="xref" href="stldb_mapfind.html" title="find">
239find
240</a>
241</td>
242              <td>
243   <p>Find the key/data pair with specified key x. </p>        </td>
244            </tr>
245            <tr>
246              <td>
247<a class="xref" href="stldb_maplower_bound.html" title="lower_bound">
248lower_bound
249</a>
250</td>
251              <td>
252   <p>Find the greatest key less than or equal to x. </p>        </td>
253            </tr>
254            <tr>
255              <td>
256<a class="xref" href="stldb_mapequal_range.html" title="equal_range">
257equal_range
258</a>
259</td>
260              <td>
261   <p>Find the range within which all keys equal to specified key x. </p>        </td>
262            </tr>
263            <tr>
264              <td>
265<a class="xref" href="stldb_mapcount.html" title="count">
266count
267</a>
268</td>
269              <td>
270   <p>Count the number of key/data pairs having specified key x. </p>        </td>
271            </tr>
272            <tr>
273              <td>
274<a class="xref" href="stldb_mapupper_bound.html" title="upper_bound">
275upper_bound
276</a>
277</td>
278              <td>
279   <p>Find the least key greater than x. </p>        </td>
280            </tr>
281            <tr>
282              <td>
283<a class="xref" href="stldb_mapkey_eq.html" title="key_eq">
284key_eq
285</a>
286</td>
287              <td>
288   <p>Function to get key compare functor. </p>        </td>
289            </tr>
290            <tr>
291              <td>
292<a class="xref" href="stldb_maphash_funct.html" title="hash_funct">
293hash_funct
294</a>
295</td>
296              <td>
297   <p>Function to get hash key generating functor. </p>        </td>
298            </tr>
299            <tr>
300              <td>
301<a class="xref" href="stldb_mapvalue_comp.html" title="value_comp">
302value_comp
303</a>
304</td>
305              <td>
306   <p>Function to get value compare functor. </p>        </td>
307            </tr>
308            <tr>
309              <td>
310<a class="xref" href="stldb_mapkey_comp.html" title="key_comp">
311key_comp
312</a>
313</td>
314              <td>
315   <p>Function to get key compare functor. </p>        </td>
316            </tr>
317            <tr>
318              <td>
319<a class="xref" href="stldb_mapoperator_assign.html" title="operator=">
320operator=
321</a>
322</td>
323              <td>
324   <p>Container content assignment operator. </p>        </td>
325            </tr>
326            <tr>
327              <td>
328<a class="xref" href="stldb_mapoperator_sqbrk.html" title="operator[]">
329operator[]
330</a>
331</td>
332              <td>
333   <p>Retrieve data element by key. </p>        </td>
334            </tr>
335            <tr>
336              <td>
337<a class="xref" href="stldb_mapswap.html" title="swap">
338swap
339</a>
340</td>
341              <td>
342   <p>Swap content with container mp. </p>        </td>
343            </tr>
344            <tr>
345              <td>
346<a class="xref" href="stldb_mapclear.html" title="clear">
347clear
348</a>
349</td>
350              <td>
351   <p>Clear contents in this container. </p>        </td>
352            </tr>
353            <tr>
354              <td>
355<a class="xref" href="stldb_mapoperator_eq.html" title="operator==">
356operator==
357</a>
358</td>
359              <td>
360   <p>Map content equality comparison operator. </p>        </td>
361            </tr>
362            <tr>
363              <td>
364<a class="xref" href="stldb_mapoperator_ueq.html" title="operator!=">
365operator!=
366</a>
367</td>
368              <td>
369   <p>Container unequality comparison operator. </p>        </td>
370            </tr>
371          </tbody>
372        </table>
373      </div>
374      <h4><a id="id1550173"></a>
375Group</h4>
376      <p>
377<a class="xref" href="dbstl_containers.html" title="Chapter��2.�� Dbstl Container Classes">
378 Dbstl Container Classes  </a>
379</p>
380      <p>
381</p>
382      <div class="sect1" lang="en" xml:lang="en">
383        <div class="titlepage">
384          <div>
385            <div>
386              <h2 class="title" style="clear: both"><a id="stldb_mapdb_map"></a>
387db_map
388</h2>
389            </div>
390          </div>
391        </div>
392        <div class="sect2" lang="en" xml:lang="en">
393          <div class="titlepage">
394            <div>
395              <div>
396                <h3 class="title"><a id="func_details"></a>
397Function Details</h3>
398              </div>
399            </div>
400          </div>
401          <pre class="programlisting">
402db_map(Db��*dbp=NULL,
403��������DbEnv��*envp=NULL)
404 </pre>
405          <div class="sect3" lang="en" xml:lang="en">
406            <div class="titlepage"></div>
407            <p>Create a std::map/hash_map equivalent associative container. </p>
408            <p>See the handle requirement in class details to pass correct database/environment handles. </p>
409          </div>
410          <div class="sect3" lang="en" xml:lang="en">
411            <div class="titlepage">
412              <div>
413                <div>
414                  <h4 class="title"><a id="id1550564"></a>
415Parameters</h4>
416                </div>
417              </div>
418            </div>
419            <div class="sect4" lang="en" xml:lang="en">
420              <div class="titlepage">
421                <div>
422                  <div>
423                    <h5 class="title"><a id="id1549611"></a>
424 dbp </h5>
425                  </div>
426                </div>
427              </div>
428              <p>The database handle. </p>
429            </div>
430            <div class="sect4" lang="en" xml:lang="en">
431              <div class="titlepage">
432                <div>
433                  <div>
434                    <h5 class="title"><a id="id1549980"></a>
435 envp </h5>
436                  </div>
437                </div>
438              </div>
439              <p>The database environment handle. </p>
440            </div>
441          </div>
442          <div class="sect3" lang="en" xml:lang="en">
443            <div class="titlepage">
444              <div>
445                <div>
446                  <h4 class="title"><a id="id1549612"></a>
447See Also</h4>
448                </div>
449              </div>
450            </div>
451            <p>
452    </p>
453            <p><a class="link" href="stldb_containerdb_container.html" title="db_container">db_container(Db*, DbEnv*)</a>
454 </p>
455            <p>   </p>
456          </div>
457          <pre class="programlisting">
458db_map(Db��*dbp,��DbEnv��*envp,��InputIterator��first,
459��������InputIterator��last)
460 </pre>
461          <div class="sect3" lang="en" xml:lang="en">
462            <div class="titlepage"></div>
463            <p>Iteration constructor. </p>
464            <p>Iterates between first and last, setting a copy of each of the sequence of elements as the content of the container object. Create a std::map/hash_map equivalent associative container. Insert a range of elements into the database. The range is [first, last), which contains elements that can be converted to type ddt automatically. See the handle requirement in class details to pass correct database/environment handles. This function supports auto-commit. </p>
465          </div>
466          <div class="sect3" lang="en" xml:lang="en">
467            <div class="titlepage">
468              <div>
469                <div>
470                  <h4 class="title"><a id="id1550193"></a>
471Parameters</h4>
472                </div>
473              </div>
474            </div>
475            <div class="sect4" lang="en" xml:lang="en">
476              <div class="titlepage">
477                <div>
478                  <div>
479                    <h5 class="title"><a id="id1549953"></a>
480 dbp </h5>
481                  </div>
482                </div>
483              </div>
484              <p>The database handle. </p>
485            </div>
486            <div class="sect4" lang="en" xml:lang="en">
487              <div class="titlepage">
488                <div>
489                  <div>
490                    <h5 class="title"><a id="id1550407"></a>
491 envp </h5>
492                  </div>
493                </div>
494              </div>
495              <p>The database environment handle. </p>
496            </div>
497            <div class="sect4" lang="en" xml:lang="en">
498              <div class="titlepage">
499                <div>
500                  <div>
501                    <h5 class="title"><a id="id1550408"></a>
502 last </h5>
503                  </div>
504                </div>
505              </div>
506              <p>The open boundary of the range. </p>
507            </div>
508            <div class="sect4" lang="en" xml:lang="en">
509              <div class="titlepage">
510                <div>
511                  <div>
512                    <h5 class="title"><a id="id1549988"></a>
513 first </h5>
514                  </div>
515                </div>
516              </div>
517              <p>The closed boundary of the range. </p>
518            </div>
519          </div>
520          <div class="sect3" lang="en" xml:lang="en">
521            <div class="titlepage">
522              <div>
523                <div>
524                  <h4 class="title"><a id="id1550720"></a>
525See Also</h4>
526                </div>
527              </div>
528            </div>
529            <p>
530    </p>
531            <p><a class="link" href="stldb_containerdb_container.html" title="db_container">db_container(Db*, DbEnv*)</a>
532 </p>
533            <p>   </p>
534          </div>
535          <pre class="programlisting">
536db_map(const��db_map&lt;��kdt,��ddt,��value_type_sub,
537��������iterator��&gt;��&amp;x)
538 </pre>
539          <div class="sect3" lang="en" xml:lang="en">
540            <div class="titlepage"></div>
541            <p>Copy constructor. </p>
542            <p>Create an database and insert all key/data pairs in x into this container. x's data members are not copied. This function supports auto-commit. </p>
543          </div>
544          <div class="sect3" lang="en" xml:lang="en">
545            <div class="titlepage">
546              <div>
547                <div>
548                  <h4 class="title"><a id="id1550775"></a>
549Parameters</h4>
550                </div>
551              </div>
552            </div>
553            <div class="sect4" lang="en" xml:lang="en">
554              <div class="titlepage">
555                <div>
556                  <div>
557                    <h5 class="title"><a id="id1550766"></a>
558 x </h5>
559                  </div>
560                </div>
561              </div>
562              <p>The other container to initialize this container. </p>
563            </div>
564          </div>
565          <div class="sect3" lang="en" xml:lang="en">
566            <div class="titlepage">
567              <div>
568                <div>
569                  <h4 class="title"><a id="id1550551"></a>
570See Also</h4>
571                </div>
572              </div>
573            </div>
574            <p>
575    </p>
576            <p><a class="link" href="stldb_containerdb_container.html" title="db_container">db_container(const db_container&amp;)</a>
577 </p>
578            <p>   </p>
579          </div>
580        </div>
581        <div class="sect2" lang="en" xml:lang="en">
582          <div class="titlepage">
583            <div>
584              <div>
585                <h3 class="title"><a id="id1549890"></a>
586Class</h3>
587              </div>
588            </div>
589          </div>
590          <p>
591  <a class="link" href="db_map.html" title="Chapter��5.�� Db_map">
592  db_map</a>
593     </p>
594        </div>
595      </div>
596    </div>
597    <div class="navfooter">
598      <hr />
599      <table width="100%" summary="Navigation footer">
600        <tr>
601          <td width="40%" align="left"><a accesskey="p" href="stldb_vectorclear.html">Prev</a>��</td>
602          <td width="20%" align="center">��</td>
603          <td width="40%" align="right">��<a accesskey="n" href="stldb_mapdstr_db_map.html">Next</a></td>
604        </tr>
605        <tr>
606          <td width="40%" align="left" valign="top">
607clear
608��</td>
609          <td width="20%" align="center">
610            <a accesskey="h" href="index.html">Home</a>
611          </td>
612          <td width="40%" align="right" valign="top">��
613~db_map
614</td>
615        </tr>
616      </table>
617    </div>
618  </body>
619</html>
620