<!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++: Heap-Based</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('a01524.html','');}); /* @license-end */ </script> <div id="doc-content"> <div class="header"> <div class="summary"> <a href="#groups">Modules</a> | <a href="#nested-classes">Classes</a> | <a href="#typedef-members">Typedefs</a> | <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Heap-Based<div class="ingroups"><a class="el" href="a01458.html">Extensions</a> » <a class="el" href="a01526.html">Policy-Based Data Structures</a> » <a class="el" href="a01517.html">Containers</a></div></div> </div> </div><!--header--> <div class="contents"> <div class="dynheader"> Collaboration diagram for Heap-Based:</div> <div class="dyncontent"> <center><table><tr><td><div class="center"><iframe scrolling="no" frameborder="0" src="a01524.svg" width="438" height="35"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </td></tr></table></center> </div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="groups"></a> Modules</h2></td></tr> <tr class="memitem:a01525"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a01525.html">Base and Policy Classes</a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="nested-classes"></a> Classes</h2></td></tr> <tr class="memitem:"><td class="memItemLeft" align="right" valign="top">class  </td><td class="memItemRight" valign="bottom"><a class="el" href="a11108.html">__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc ></a></td></tr> <tr class="separator:"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="typedef-members"></a> Typedefs</h2></td></tr> <tr class="memitem:gac9c89575468e639df2697aae589dfb0e"><td class="memItemLeft" align="right" valign="top"><a id="gac9c89575468e639df2697aae589dfb0e"></a> typedef _Alloc </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::allocator_type</b></td></tr> <tr class="separator:gac9c89575468e639df2697aae589dfb0e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga304975fa40b9b7448b4762d720832c46"><td class="memItemLeft" align="right" valign="top"><a id="ga304975fa40b9b7448b4762d720832c46"></a> typedef Cmp_Fn </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::cmp_fn</b></td></tr> <tr class="separator:ga304975fa40b9b7448b4762d720832c46"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga92f3572681756c5f9298a748f09775cd"><td class="memItemLeft" align="right" valign="top"><a id="ga92f3572681756c5f9298a748f09775cd"></a> typedef base_type::const_iterator </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_iterator</b></td></tr> <tr class="separator:ga92f3572681756c5f9298a748f09775cd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga5dd06f5e1564a87cddf962cf06089ef5"><td class="memItemLeft" align="right" valign="top"><a id="ga5dd06f5e1564a87cddf962cf06089ef5"></a> typedef __rebind_va::const_pointer </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_pointer</b></td></tr> <tr class="separator:ga5dd06f5e1564a87cddf962cf06089ef5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga966051b061a35415b4db0e5559ddb5e3"><td class="memItemLeft" align="right" valign="top"><a id="ga966051b061a35415b4db0e5559ddb5e3"></a> typedef __rebind_va::const_reference </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::const_reference</b></td></tr> <tr class="separator:ga966051b061a35415b4db0e5559ddb5e3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga42dabb276b4f6048af380a775faf157e"><td class="memItemLeft" align="right" valign="top"><a id="ga42dabb276b4f6048af380a775faf157e"></a> typedef Tag </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::container_category</b></td></tr> <tr class="separator:ga42dabb276b4f6048af380a775faf157e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga94bbdf0021e115d17411582b7f973ee5"><td class="memItemLeft" align="right" valign="top"><a id="ga94bbdf0021e115d17411582b7f973ee5"></a> typedef allocator_type::difference_type </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::difference_type</b></td></tr> <tr class="separator:ga94bbdf0021e115d17411582b7f973ee5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0df067f0a544d1fc3fd3fbadda94f1e9"><td class="memItemLeft" align="right" valign="top"><a id="ga0df067f0a544d1fc3fd3fbadda94f1e9"></a> typedef base_type::iterator </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::iterator</b></td></tr> <tr class="separator:ga0df067f0a544d1fc3fd3fbadda94f1e9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga6125fd5a518b48ab8f7f770e1e22436a"><td class="memItemLeft" align="right" valign="top"><a id="ga6125fd5a518b48ab8f7f770e1e22436a"></a> typedef base_type::point_const_iterator </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::point_const_iterator</b></td></tr> <tr class="separator:ga6125fd5a518b48ab8f7f770e1e22436a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gadf16ab3be6832883eaa47729e4f0dfdd"><td class="memItemLeft" align="right" valign="top"><a id="gadf16ab3be6832883eaa47729e4f0dfdd"></a> typedef base_type::point_iterator </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::point_iterator</b></td></tr> <tr class="separator:gadf16ab3be6832883eaa47729e4f0dfdd"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga8852b6160821a88227be8ba430580312"><td class="memItemLeft" align="right" valign="top"><a id="ga8852b6160821a88227be8ba430580312"></a> typedef __rebind_va::pointer </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::pointer</b></td></tr> <tr class="separator:ga8852b6160821a88227be8ba430580312"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac3dcdf43512d32f125e8062c8d7db069"><td class="memItemLeft" align="right" valign="top"><a id="gac3dcdf43512d32f125e8062c8d7db069"></a> typedef __rebind_va::reference </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::reference</b></td></tr> <tr class="separator:gac3dcdf43512d32f125e8062c8d7db069"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga38a5ca18e23a5576603bd787a51df734"><td class="memItemLeft" align="right" valign="top"><a id="ga38a5ca18e23a5576603bd787a51df734"></a> typedef allocator_type::size_type </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::size_type</b></td></tr> <tr class="separator:ga38a5ca18e23a5576603bd787a51df734"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2e039a9e0523d941daeb0cf62bfaece8"><td class="memItemLeft" align="right" valign="top"><a id="ga2e039a9e0523d941daeb0cf62bfaece8"></a> typedef _Tv </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::value_type</b></td></tr> <tr class="separator:ga2e039a9e0523d941daeb0cf62bfaece8"><td class="memSeparator" colspan="2"> </td></tr> </table><table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:gaa6332f0e852dc89f0879cb5408d168c0"><td class="memItemLeft" align="right" valign="top"> </td><td class="memItemRight" valign="bottom"><a class="el" href="a01524.html#gaa6332f0e852dc89f0879cb5408d168c0">__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue</a> (const cmp_fn &r_cmp_fn)</td></tr> <tr class="separator:gaa6332f0e852dc89f0879cb5408d168c0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga2b637d89cbd874881a4da920d57b0487"><td class="memTemplParams" colspan="2">template<typename It > </td></tr> <tr class="memitem:ga2b637d89cbd874881a4da920d57b0487"><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01524.html#ga2b637d89cbd874881a4da920d57b0487">__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue</a> (It first_it, It last_it)</td></tr> <tr class="separator:ga2b637d89cbd874881a4da920d57b0487"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gad0141192206747833a170be548fd51e0"><td class="memTemplParams" colspan="2">template<typename It > </td></tr> <tr class="memitem:gad0141192206747833a170be548fd51e0"><td class="memTemplItemLeft" align="right" valign="top"> </td><td class="memTemplItemRight" valign="bottom"><a class="el" href="a01524.html#gad0141192206747833a170be548fd51e0">__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue</a> (It first_it, It last_it, const cmp_fn &r_cmp_fn)</td></tr> <tr class="separator:gad0141192206747833a170be548fd51e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga899c272fba59f61ba76caa6e84d35bb4"><td class="memItemLeft" align="right" valign="top"><a id="ga899c272fba59f61ba76caa6e84d35bb4"></a>  </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::priority_queue</b> (const <a class="el" href="a11108.html">priority_queue</a> &other)</td></tr> <tr class="separator:ga899c272fba59f61ba76caa6e84d35bb4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaee432339aba7e2e111ba65ada35a3dc3"><td class="memItemLeft" align="right" valign="top"><a id="gaee432339aba7e2e111ba65ada35a3dc3"></a> <a class="el" href="a11108.html">priority_queue</a> & </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::operator=</b> (const <a class="el" href="a11108.html">priority_queue</a> &other)</td></tr> <tr class="separator:gaee432339aba7e2e111ba65ada35a3dc3"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae5076ffb65c8817075b6cf375cc8c5ca"><td class="memItemLeft" align="right" valign="top"><a id="gae5076ffb65c8817075b6cf375cc8c5ca"></a> void </td><td class="memItemRight" valign="bottom"><b>__gnu_pbds::priority_queue< _Tv, Cmp_Fn, Tag, _Alloc >::swap</b> (<a class="el" href="a11108.html">priority_queue</a> &other)</td></tr> <tr class="separator:gae5076ffb65c8817075b6cf375cc8c5ca"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <h2 class="groupheader">Function Documentation</h2> <a id="gaa6332f0e852dc89f0879cb5408d168c0"></a> <h2 class="memtitle"><span class="permalink"><a href="#gaa6332f0e852dc89f0879cb5408d168c0">◆ </a></span>priority_queue() <span class="overload">[1/3]</span></h2> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>> </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a11108.html">__gnu_pbds::priority_queue</a>< _Tv, Cmp_Fn, Tag, _Alloc >::<a class="el" href="a11108.html">priority_queue</a> </td> <td>(</td> <td class="paramtype">const cmp_fn & </td> <td class="paramname"><em>r_cmp_fn</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor taking some policy objects. r_cmp_fn will be copied by the Cmp_Fn object of the container object. </p> <p class="definition">Definition at line <a class="el" href="a01118_source.html#l00116">116</a> of file <a class="el" href="a01118_source.html">priority_queue.hpp</a>.</p> </div> </div> <a id="ga2b637d89cbd874881a4da920d57b0487"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga2b637d89cbd874881a4da920d57b0487">◆ </a></span>priority_queue() <span class="overload">[2/3]</span></h2> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>> </div> <div class="memtemplate"> template<typename It > </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a11108.html">__gnu_pbds::priority_queue</a>< _Tv, Cmp_Fn, Tag, _Alloc >::<a class="el" href="a11108.html">priority_queue</a> </td> <td>(</td> <td class="paramtype">It </td> <td class="paramname"><em>first_it</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">It </td> <td class="paramname"><em>last_it</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor taking __iterators to a range of value_types. The value_types between first_it and last_it will be inserted into the container object. </p> <p class="definition">Definition at line <a class="el" href="a01118_source.html#l00122">122</a> of file <a class="el" href="a01118_source.html">priority_queue.hpp</a>.</p> </div> </div> <a id="gad0141192206747833a170be548fd51e0"></a> <h2 class="memtitle"><span class="permalink"><a href="#gad0141192206747833a170be548fd51e0">◆ </a></span>priority_queue() <span class="overload">[3/3]</span></h2> <div class="memitem"> <div class="memproto"> <div class="memtemplate"> template<typename _Tv , typename Cmp_Fn = std::less<_Tv>, typename Tag = pairing_heap_tag, typename _Alloc = std::allocator<char>> </div> <div class="memtemplate"> template<typename It > </div> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname"><a class="el" href="a11108.html">__gnu_pbds::priority_queue</a>< _Tv, Cmp_Fn, Tag, _Alloc >::<a class="el" href="a11108.html">priority_queue</a> </td> <td>(</td> <td class="paramtype">It </td> <td class="paramname"><em>first_it</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">It </td> <td class="paramname"><em>last_it</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">const cmp_fn & </td> <td class="paramname"><em>r_cmp_fn</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">inline</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Constructor taking __iterators to a range of value_types and some policy objects The value_types between first_it and last_it will be inserted into the container object. r_cmp_fn will be copied by the cmp_fn object of the container object. </p> <p class="definition">Definition at line <a class="el" href="a01118_source.html#l00130">130</a> of file <a class="el" href="a01118_source.html">priority_queue.hpp</a>.</p> </div> </div> </div><!-- contents --> </div><!-- doc-content --> <!-- start footer part --> <div id="nav-path" class="navpath"><!-- id is needed for treeview function! --> <ul> <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>