<!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/xhtml;charset=UTF-8"/> <title>libstdc++: std::_Deque_base< _Tp, _Alloc > Class Template Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript"> $(document).ready(initResizable); </script> <link href="doxygen.css" rel="stylesheet" type="text/css"/> </head> <body> <!-- Generated by Doxygen 1.7.4 --> <div id="top"> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td style="padding-left: 0.5em;"> <div id="projectname">libstdc++</div> </td> </tr> </tbody> </table> </div> </div> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> initNavTree('a00318.html',''); </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#pub-types">Public Types</a> | <a href="#pub-methods">Public Member Functions</a> | <a href="#pro-types">Protected Types</a> | <a href="#pro-methods">Protected Member Functions</a> | <a href="#pro-attribs">Protected Attributes</a> </div> <div class="headertitle"> <div class="title">std::_Deque_base< _Tp, _Alloc > Class Template Reference</div> </div> </div> <div class="contents"> <!-- doxytag: class="std::_Deque_base" --><div class="dynheader"> Inheritance diagram for std::_Deque_base< _Tp, _Alloc >:</div> <div class="dyncontent"> <div class="center"><img src="a01781.png" border="0" usemap="#std_1_1___deque__base_3_01___tp_00_01___alloc_01_4_inherit__map" alt="Inheritance graph"/></div> <map name="std_1_1___deque__base_3_01___tp_00_01___alloc_01_4_inherit__map" id="std_1_1___deque__base_3_01___tp_00_01___alloc_01_4_inherit__map"> <area shape="rect" id="node3" href="a00455.html" title="A standard container using fixed-size memory allocation and constant-time manipulation of elements at..." alt="" coords="27,83,187,112"/></map> <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> <p><a href="a01782.html">List of all members.</a></p> <h2><a name="pub-types"></a> Public Types</h2> <ul> <li><a class="anchor" id="a80b4dcbbb5888c57b177e92f99d99689"></a><!-- doxytag: member="std::_Deque_base::allocator_type" ref="a80b4dcbbb5888c57b177e92f99d99689" args="" --> typedef _Alloc <b>allocator_type</b> <li><a class="anchor" id="a9923ff452fef05898a7c4035050c1bae"></a><!-- doxytag: member="std::_Deque_base::const_iterator" ref="a9923ff452fef05898a7c4035050c1bae" args="" --> typedef <a class="el" href="a00236.html">_Deque_iterator</a>< _Tp, <br class="typebreak"/> const _Tp &, const _Tp * > <b>const_iterator</b> <li><a class="anchor" id="ada4918c33dd0fb53c4a98fafed0538f0"></a><!-- doxytag: member="std::_Deque_base::iterator" ref="ada4918c33dd0fb53c4a98fafed0538f0" args="" --> typedef <a class="el" href="a00236.html">_Deque_iterator</a>< _Tp, <br class="typebreak"/> _Tp &, _Tp * > <b>iterator</b> </ul> <h2><a name="pub-methods"></a> Public Member Functions</h2> <ul> <li><a class="anchor" id="a29e027724cf8879d194ff33ab0dfcaec"></a><!-- doxytag: member="std::_Deque_base::_Deque_base" ref="a29e027724cf8879d194ff33ab0dfcaec" args="(const allocator_type &__a, size_t __num_elements)" --> <b>_Deque_base</b> (const allocator_type &__a, size_t __num_elements) <li><a class="anchor" id="ad2d286e700bebc508fe9e94b1406ed2a"></a><!-- doxytag: member="std::_Deque_base::_Deque_base" ref="ad2d286e700bebc508fe9e94b1406ed2a" args="(_Deque_base &&__x)" --> <b>_Deque_base</b> (<a class="el" href="a00318.html">_Deque_base</a> &&__x) <li><a class="anchor" id="ac2bf45459ba83612cc31f9118af457ee"></a><!-- doxytag: member="std::_Deque_base::_Deque_base" ref="ac2bf45459ba83612cc31f9118af457ee" args="(const allocator_type &__a)" --> <b>_Deque_base</b> (const allocator_type &__a) <li><a class="anchor" id="a37ac63f8c2abe9f2e35a9df78809c28b"></a><!-- doxytag: member="std::_Deque_base::_Deque_base" ref="a37ac63f8c2abe9f2e35a9df78809c28b" args="(size_t __num_elements)" --> <b>_Deque_base</b> (size_t __num_elements) <li><a class="anchor" id="a482b7d192e27d76b9f62c9ff15f42597"></a><!-- doxytag: member="std::_Deque_base::get_allocator" ref="a482b7d192e27d76b9f62c9ff15f42597" args="() const " --> allocator_type <b>get_allocator</b> () const </ul> <h2><a name="pro-types"></a> Protected Types</h2> <ul> <li>enum { <b>_S_initial_map_size</b> } <li><a class="anchor" id="a3cc2c5fa2a68d634f59f7382fb17f8c0"></a><!-- doxytag: member="std::_Deque_base::_Map_alloc_type" ref="a3cc2c5fa2a68d634f59f7382fb17f8c0" args="" --> typedef _Alloc::template <br class="typebreak"/> rebind< _Tp * >::other <b>_Map_alloc_type</b> <li><a class="anchor" id="a3c1c861adc450bcba582bb66719218f0"></a><!-- doxytag: member="std::_Deque_base::_Tp_alloc_type" ref="a3c1c861adc450bcba582bb66719218f0" args="" --> typedef _Alloc::template <br class="typebreak"/> rebind< _Tp >::other <b>_Tp_alloc_type</b> </ul> <h2><a name="pro-methods"></a> Protected Member Functions</h2> <ul> <li><a class="anchor" id="abc7f6d21f826f6b5f21f3a6a5eb1da52"></a><!-- doxytag: member="std::_Deque_base::_M_allocate_map" ref="abc7f6d21f826f6b5f21f3a6a5eb1da52" args="(size_t __n)" --> _Tp ** <b>_M_allocate_map</b> (size_t __n) <li><a class="anchor" id="aaf97cdf0b9458a7ff519343dff42ec00"></a><!-- doxytag: member="std::_Deque_base::_M_allocate_node" ref="aaf97cdf0b9458a7ff519343dff42ec00" args="()" --> _Tp * <b>_M_allocate_node</b> () <li><a class="anchor" id="a53be19637291b5187e19f924d2c190c0"></a><!-- doxytag: member="std::_Deque_base::_M_create_nodes" ref="a53be19637291b5187e19f924d2c190c0" args="(_Tp **__nstart, _Tp **__nfinish)" --> void <b>_M_create_nodes</b> (_Tp **__nstart, _Tp **__nfinish) <li><a class="anchor" id="a9723feb3a7e4bf03abc6f63cd13e4d57"></a><!-- doxytag: member="std::_Deque_base::_M_deallocate_map" ref="a9723feb3a7e4bf03abc6f63cd13e4d57" args="(_Tp **__p, size_t __n)" --> void <b>_M_deallocate_map</b> (_Tp **__p, size_t __n) <li><a class="anchor" id="a11cb0850ddddb98ab25dab769363bd81"></a><!-- doxytag: member="std::_Deque_base::_M_deallocate_node" ref="a11cb0850ddddb98ab25dab769363bd81" args="(_Tp *__p)" --> void <b>_M_deallocate_node</b> (_Tp *__p) <li><a class="anchor" id="a2978dfb956933aa88c7d7b983e61d6d7"></a><!-- doxytag: member="std::_Deque_base::_M_destroy_nodes" ref="a2978dfb956933aa88c7d7b983e61d6d7" args="(_Tp **__nstart, _Tp **__nfinish)" --> void <b>_M_destroy_nodes</b> (_Tp **__nstart, _Tp **__nfinish) <li><a class="anchor" id="a73055ac0d2a55f26acb54af8941d82e7"></a><!-- doxytag: member="std::_Deque_base::_M_get_map_allocator" ref="a73055ac0d2a55f26acb54af8941d82e7" args="() const " --> _Map_alloc_type <b>_M_get_map_allocator</b> () const <li><a class="anchor" id="aaa92671e56339dcbc0f5e5f1cbf008cf"></a><!-- doxytag: member="std::_Deque_base::_M_get_Tp_allocator" ref="aaa92671e56339dcbc0f5e5f1cbf008cf" args="() const " --> const _Tp_alloc_type & <b>_M_get_Tp_allocator</b> () const <li><a class="anchor" id="a8324ea7b03233aca776a658a79a2dfac"></a><!-- doxytag: member="std::_Deque_base::_M_get_Tp_allocator" ref="a8324ea7b03233aca776a658a79a2dfac" args="()" --> _Tp_alloc_type & <b>_M_get_Tp_allocator</b> () <li>void <a class="el" href="a00318.html#a0ba38b77ebabad6056d04d9f65ffa74c">_M_initialize_map</a> (size_t) </ul> <h2><a name="pro-attribs"></a> Protected Attributes</h2> <ul> <li><a class="anchor" id="a5e3339e8baafd02e6d232c5b25d42d63"></a><!-- doxytag: member="std::_Deque_base::_M_impl" ref="a5e3339e8baafd02e6d232c5b25d42d63" args="" --> _Deque_impl <b>_M_impl</b> </ul> <hr/><a name="details" id="details"></a><h2>Detailed Description</h2> <div class="textblock"><h3>template<typename _Tp, typename _Alloc><br/> class std::_Deque_base< _Tp, _Alloc ></h3> <p>Deque base class. This class provides the unified face for deque's allocation. This class's constructor and destructor allocate and deallocate (but do not initialize) storage. This makes exception safety easier.</p> <p>Nothing in this class ever constructs or destroys an actual Tp element. (Deque handles that itself.) Only/All memory management is performed here. </p> <p>Definition at line <a class="el" href="a01049_source.html#l00438">438</a> of file <a class="el" href="a01049_source.html">stl_deque.h</a>.</p> </div><hr/><h2>Member Function Documentation</h2> <a class="anchor" id="a0ba38b77ebabad6056d04d9f65ffa74c"></a><!-- doxytag: member="std::_Deque_base::_M_initialize_map" ref="a0ba38b77ebabad6056d04d9f65ffa74c" args="(size_t)" --> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Tp , typename _Alloc > </div> <table class="memname"> <tr> <td class="memname">void <a class="el" href="a00318.html">std::_Deque_base</a>< _Tp, _Alloc >::_M_initialize_map </td> <td>(</td> <td class="paramtype">size_t </td> <td class="paramname"><em>__num_elements</em></td><td>)</td> <td><code> [protected]</code></td> </tr> </table> </div> <div class="memdoc"> <p>Layout storage. </p> <dl><dt><b>Parameters:</b></dt><dd> <table class="params"> <tr><td class="paramname">num_elements</td><td>The count of T's for which to allocate space at first. </td></tr> </table> </dd> </dl> <dl class="return"><dt><b>Returns:</b></dt><dd>Nothing.</dd></dl> <p>The initial underlying memory layout is a bit complicated... </p> <p>Definition at line <a class="el" href="a01049_source.html#l00574">574</a> of file <a class="el" href="a01049_source.html">stl_deque.h</a>.</p> <p>References <a class="el" href="a01046_source.html#l00210">std::max()</a>.</p> </div> </div> <hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a01049_source.html">stl_deque.h</a></li> </ul> </div> </div> <div id="nav-path" class="navpath"> <ul> <li class="navelem"><a class="el" href="a01137.html">std</a> </li> <li class="navelem"><a class="el" href="a00318.html">_Deque_base</a> </li> <li class="footer">Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.7.4 </li> </ul> </div> </body> </html>