<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.15"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>libstdc++: __gnu_cxx::new_allocator< _Tp > Class Template Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="navtree.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="resize.js"></script> <script type="text/javascript" src="navtreedata.js"></script> <script type="text/javascript" src="navtree.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(initResizable); /* @license-end */</script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">libstdc++ </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.15 --> </div><!-- top --> <div id="side-nav" class="ui-resizable side-nav-resizable"> <div id="nav-tree"> <div id="nav-tree-contents"> <div id="nav-sync" class="sync"></div> </div> </div> <div id="splitbar" style="-moz-user-select:none;" class="ui-resizable-handle"> </div> </div> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:cf05388f2679ee054f2beb29a391d25f4e673ac3&dn=gpl-2.0.txt GPL-v2 */ $(document).ready(function(){initNavTree('a10432.html','');}); /* @license-end */ </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="a10429.html">List of all members</a> </div> <div class="headertitle"> <div class="title">__gnu_cxx::new_allocator< _Tp > Class Template Reference<div class="ingroups"><a class="el" href="a01477.html">Utilities</a> » <a class="el" href="a01471.html">Memory</a> » <a class="el" href="a01490.html">Allocators</a></div></div> </div> </div><!--header--> <div class="contents"> <div class="dynheader"> Inheritance diagram for __gnu_cxx::new_allocator< _Tp >:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a10431.svg" width="318" height="123"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> <center><span class="legend">[<a target="top" href="graph_legend.html">legend</a>]</span></center></div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-types"></a> Public Types</h2></td></tr> <tr class="memitem:a00b9fcf6c2205fab84023489ab71c272"><td class="memItemLeft" align="right" valign="top"><a id="a00b9fcf6c2205fab84023489ab71c272"></a> typedef const _Tp * </td><td class="memItemRight" valign="bottom"><b>const_pointer</b></td></tr> <tr class="separator:a00b9fcf6c2205fab84023489ab71c272"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab57e15c08469de7b5bbe8d7e256e0763"><td class="memItemLeft" align="right" valign="top"><a id="ab57e15c08469de7b5bbe8d7e256e0763"></a> typedef const _Tp & </td><td class="memItemRight" valign="bottom"><b>const_reference</b></td></tr> <tr class="separator:ab57e15c08469de7b5bbe8d7e256e0763"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a302c1351bc786389c441810f4fe4abb6"><td class="memItemLeft" align="right" valign="top"><a id="a302c1351bc786389c441810f4fe4abb6"></a> typedef ptrdiff_t </td><td class="memItemRight" valign="bottom"><b>difference_type</b></td></tr> <tr class="separator:a302c1351bc786389c441810f4fe4abb6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aae43e0e0f5cca46d324a75a4c1d1c351"><td class="memItemLeft" align="right" valign="top"><a id="aae43e0e0f5cca46d324a75a4c1d1c351"></a> typedef _Tp * </td><td class="memItemRight" valign="bottom"><b>pointer</b></td></tr> <tr class="separator:aae43e0e0f5cca46d324a75a4c1d1c351"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:add4e357b45ead9f77ae0b81acb0482b5"><td class="memItemLeft" align="right" valign="top"><a id="add4e357b45ead9f77ae0b81acb0482b5"></a> typedef <a class="el" href="a01476.html#ga6a860513044e23d34e553ea986e83fa1">std::true_type</a> </td><td class="memItemRight" valign="bottom"><b>propagate_on_container_move_assignment</b></td></tr> <tr class="separator:add4e357b45ead9f77ae0b81acb0482b5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a15743ed603d8c41640e264aadb0081eb"><td class="memItemLeft" align="right" valign="top"><a id="a15743ed603d8c41640e264aadb0081eb"></a> typedef _Tp & </td><td class="memItemRight" valign="bottom"><b>reference</b></td></tr> <tr class="separator:a15743ed603d8c41640e264aadb0081eb"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ab4a95bcc32cac6568acde5726f8872e0"><td class="memItemLeft" align="right" valign="top"><a id="ab4a95bcc32cac6568acde5726f8872e0"></a> typedef size_t </td><td class="memItemRight" valign="bottom"><b>size_type</b></td></tr> <tr class="separator:ab4a95bcc32cac6568acde5726f8872e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae2fac687fad1a5c8f5ec310b05914a05"><td class="memItemLeft" align="right" valign="top"><a id="ae2fac687fad1a5c8f5ec310b05914a05"></a> typedef _Tp </td><td class="memItemRight" valign="bottom"><b>value_type</b></td></tr> <tr class="separator:ae2fac687fad1a5c8f5ec310b05914a05"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="pub-methods"></a> Public Member Functions</h2></td></tr> <tr class="memitem:ad9797d896f407229e3ce5dc62727e2c4"><td class="memItemLeft" align="right" valign="top"><a id="ad9797d896f407229e3ce5dc62727e2c4"></a>  </td><td class="memItemRight" valign="bottom"><b>new_allocator</b> (const <a class="el" href="a10432.html">new_allocator</a> &) noexcept</td></tr> <tr class="separator:ad9797d896f407229e3ce5dc62727e2c4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a5bfb9af82a8b5e2ff10d76deb29c82de"><td class="memTemplParams" colspan="2"><a id="a5bfb9af82a8b5e2ff10d76deb29c82de"></a> template<typename _Tp1 > </td></tr> <tr class="memitem:a5bfb9af82a8b5e2ff10d76deb29c82de"><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><b>new_allocator</b> (const <a class="el" href="a10432.html">new_allocator</a>< _Tp1 > &) noexcept</td></tr> <tr class="separator:a5bfb9af82a8b5e2ff10d76deb29c82de"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a07fa5e258cdfc648ab8fbb6ed41d4c64"><td class="memItemLeft" align="right" valign="top"><a id="a07fa5e258cdfc648ab8fbb6ed41d4c64"></a> pointer </td><td class="memItemRight" valign="bottom"><b>address</b> (reference __x) const noexcept</td></tr> <tr class="separator:a07fa5e258cdfc648ab8fbb6ed41d4c64"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa2eb7f9215d6e53897a84258b47156e4"><td class="memItemLeft" align="right" valign="top"><a id="aa2eb7f9215d6e53897a84258b47156e4"></a> const_pointer </td><td class="memItemRight" valign="bottom"><b>address</b> (const_reference __x) const noexcept</td></tr> <tr class="separator:aa2eb7f9215d6e53897a84258b47156e4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad6c9c78c9f11d364998bc48465708e9c"><td class="memItemLeft" align="right" valign="top"><a id="ad6c9c78c9f11d364998bc48465708e9c"></a> pointer </td><td class="memItemRight" valign="bottom"><b>allocate</b> (size_type __n, const void *=static_cast< const void * >(0))</td></tr> <tr class="separator:ad6c9c78c9f11d364998bc48465708e9c"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af3177f54666f595dbcab8943f828392a"><td class="memTemplParams" colspan="2"><a id="af3177f54666f595dbcab8943f828392a"></a> template<typename _Up , typename... _Args> </td></tr> <tr class="memitem:af3177f54666f595dbcab8943f828392a"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>construct</b> (_Up *__p, _Args &&... __args)</td></tr> <tr class="separator:af3177f54666f595dbcab8943f828392a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa20a4c9023d94e4f8b17234ee6660984"><td class="memItemLeft" align="right" valign="top"><a id="aa20a4c9023d94e4f8b17234ee6660984"></a> void </td><td class="memItemRight" valign="bottom"><b>deallocate</b> (pointer __p, size_type)</td></tr> <tr class="separator:aa20a4c9023d94e4f8b17234ee6660984"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa698f2dbcd76f1cf27644e7acf8fa68b"><td class="memTemplParams" colspan="2"><a id="aa698f2dbcd76f1cf27644e7acf8fa68b"></a> template<typename _Up > </td></tr> <tr class="memitem:aa698f2dbcd76f1cf27644e7acf8fa68b"><td class="memTemplItemLeft" align="right" valign="top">void </td><td class="memTemplItemRight" valign="bottom"><b>destroy</b> (_Up *__p)</td></tr> <tr class="separator:aa698f2dbcd76f1cf27644e7acf8fa68b"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a36657e31d0dc9ca9f1b5890d6937569b"><td class="memItemLeft" align="right" valign="top"><a id="a36657e31d0dc9ca9f1b5890d6937569b"></a> size_type </td><td class="memItemRight" valign="bottom"><b>max_size</b> () const noexcept</td></tr> <tr class="separator:a36657e31d0dc9ca9f1b5890d6937569b"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <div class="textblock"><h3>template<typename _Tp><br /> class __gnu_cxx::new_allocator< _Tp ></h3> <p>An allocator that uses global new, as per [20.4].</p> <p>This is precisely the allocator defined in the C++ Standard. </p> <ul> <li>all allocation calls operator new</li> <li>all deallocation calls operator delete</li> </ul> <dl class="tparams"><dt>Template Parameters</dt><dd> <table class="tparams"> <tr><td class="paramname">_Tp</td><td>Type of allocated object. </td></tr> </table> </dd> </dl> <p class="definition">Definition at line <a class="el" href="a01052_source.html#l00058">58</a> of file <a class="el" href="a01052_source.html">new_allocator.h</a>.</p> </div><hr/>The documentation for this class was generated from the following file:<ul> <li><a class="el" href="a01052_source.html">new_allocator.h</a></li> </ul> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <li class="navelem"><a class="el" href="a01544.html">__gnu_cxx</a></li><li class="navelem"><a class="el" href="a10432.html">new_allocator</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.8.15 </li> </ul> </div> </body> </html>