UNPKG

boost-react-native-bundle

Version:

Boost library as in https://sourceforge.net/projects/boost/files/boost/1.57.0/

227 lines (223 loc) 102 kB
<html> <head> <meta http-equiv="Content-Type" content="text/html; charset=US-ASCII"> <title>Class template vector</title> <link rel="stylesheet" href="../../../../doc/src/boostbook.css" type="text/css"> <meta name="generator" content="DocBook XSL Stylesheets V1.78.1"> <link rel="home" href="../../index.html" title="The Boost C++ Libraries BoostBook Documentation Subset"> <link rel="up" href="../../boost_container_header_reference.html#header.boost.container.vector_hpp" title="Header &lt;boost/container/vector.hpp&gt;"> <link rel="prev" href="throw_runtime_error.html" title="Function throw_runtime_error"> <link rel="next" href="../../container/acknowledgements_notes.html" title="Acknowledgements, notes and links"> </head> <body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF"> <table cellpadding="2" width="100%"><tr> <td valign="top"><img alt="Boost C++ Libraries" width="277" height="86" src="../../../../boost.png"></td> <td align="center"><a href="../../../../index.html">Home</a></td> <td align="center"><a href="../../../../libs/libraries.htm">Libraries</a></td> <td align="center"><a href="http://www.boost.org/users/people.html">People</a></td> <td align="center"><a href="http://www.boost.org/users/faq.html">FAQ</a></td> <td align="center"><a href="../../../../more/index.htm">More</a></td> </tr></table> <hr> <div class="spirit-nav"> <a accesskey="p" href="throw_runtime_error.html"><img src="../../../../doc/src/images/prev.png" alt="Prev"></a><a accesskey="u" href="../../boost_container_header_reference.html#header.boost.container.vector_hpp"><img src="../../../../doc/src/images/up.png" alt="Up"></a><a accesskey="h" href="../../index.html"><img src="../../../../doc/src/images/home.png" alt="Home"></a><a accesskey="n" href="../../container/acknowledgements_notes.html"><img src="../../../../doc/src/images/next.png" alt="Next"></a> </div> <div class="refentry"> <a name="boost.container.vector"></a><div class="titlepage"></div> <div class="refnamediv"> <h2><span class="refentrytitle">Class template vector</span></h2> <p>boost::container::vector</p> </div> <h2 xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv-title">Synopsis</h2> <div xmlns:rev="http://www.cs.rpi.edu/~gregod/boost/tools/doc/revision" class="refsynopsisdiv"><pre class="synopsis"><span class="comment">// In header: &lt;<a class="link" href="../../boost_container_header_reference.html#header.boost.container.vector_hpp" title="Header &lt;boost/container/vector.hpp&gt;">boost/container/vector.hpp</a>&gt; </span><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> T<span class="special">,</span> <span class="keyword">class</span> <span class="identifier">Allocator</span> BOOST_CONTAINER_DOCONLY<span class="special">&gt;</span> <span class="keyword">class</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">{</span> <span class="keyword">public</span><span class="special">:</span> <span class="comment">// types</span> <span class="keyword">typedef</span> <span class="identifier">T</span> <a name="boost.container.vector.value_type"></a><span class="identifier">value_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="special">::</span><a class="link" href="allocator_traits.html" title="Struct template allocator_traits">boost::container::allocator_traits</a><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">pointer</span> <a name="boost.container.vector.pointer"></a><span class="identifier">pointer</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="special">::</span><a class="link" href="allocator_traits.html" title="Struct template allocator_traits">boost::container::allocator_traits</a><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">const_pointer</span> <a name="boost.container.vector.const_pointer"></a><span class="identifier">const_pointer</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="special">::</span><a class="link" href="allocator_traits.html" title="Struct template allocator_traits">boost::container::allocator_traits</a><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">reference</span> <a name="boost.container.vector.reference"></a><span class="identifier">reference</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="special">::</span><a class="link" href="allocator_traits.html" title="Struct template allocator_traits">boost::container::allocator_traits</a><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">const_reference</span> <a name="boost.container.vector.const_reference"></a><span class="identifier">const_reference</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="special">::</span><a class="link" href="allocator_traits.html" title="Struct template allocator_traits">boost::container::allocator_traits</a><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">size_type</span> <a name="boost.container.vector.size_type"></a><span class="identifier">size_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="special">::</span><a class="link" href="allocator_traits.html" title="Struct template allocator_traits">boost::container::allocator_traits</a><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">difference_type</span> <a name="boost.container.vector.difference_type"></a><span class="identifier">difference_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">Allocator</span> <a name="boost.container.vector.allocator_type"></a><span class="identifier">allocator_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">Allocator</span> <a name="boost.container.vector.stored_allocator_type"></a><span class="identifier">stored_allocator_type</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">implementation_defined</span> <a name="boost.container.vector.iterator"></a><span class="identifier">iterator</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">implementation_defined</span> <a name="boost.container.vector.const_iterator"></a><span class="identifier">const_iterator</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">implementation_defined</span> <a name="boost.container.vector.reverse_iterator"></a><span class="identifier">reverse_iterator</span><span class="special">;</span> <span class="keyword">typedef</span> <span class="identifier">implementation_defined</span> <a name="boost.container.vector.const_reverse_iterator"></a><span class="identifier">const_reverse_iterator</span><span class="special">;</span> <span class="comment">// <a class="link" href="vector.html#boost.container.vectorconstruct-copy-destruct">construct/copy/destruct</a></span> <a class="link" href="vector.html#idp42420880-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">(</span><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">has_nothrow_default_constructor</span><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">)</span><span class="special">;</span> <span class="keyword">explicit</span> <a class="link" href="vector.html#idp42424240-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Allocator</span> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">explicit</span> <a class="link" href="vector.html#idp42428480-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42432560-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <a class="link" href="default_init_t.html" title="Struct default_init_t">default_init_t</a><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42438048-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42442496-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InIt<span class="special">&gt;</span> <a class="link" href="vector.html#idp42447632-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">InIt</span><span class="special">,</span> <span class="identifier">InIt</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InIt<span class="special">&gt;</span> <a class="link" href="vector.html#idp42452992-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">InIt</span><span class="special">,</span> <span class="identifier">InIt</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42459072-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42464128-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span> <span class="special">=</span> <span class="identifier">allocator_type</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42469024-bb"><span class="identifier">vector</span></a><span class="special">(</span><a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <a class="link" href="vector.html#idp42473264-bb"><span class="identifier">vector</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42479312-bb"><span class="identifier">vector</span></a><span class="special">(</span><a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;&amp;</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span> <a class="link" href="vector.html#idp42487184-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span> <a class="link" href="vector.html#idp42492896-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span> <a class="link" href="vector.html#idp42496352-bb"><span class="keyword">operator</span><span class="special">=</span></a><span class="special">(</span><a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">(</span><span class="identifier">allocator_traits_type</span><span class="special">::</span><span class="identifier">propagate_on_container_move_assignment</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">)</span><span class="special">;</span> <a class="link" href="vector.html#idp42484144-bb"><span class="special">~</span><span class="identifier">vector</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="comment">// <a class="link" href="vector.html#idp42172224-bb">public member functions</a></span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InIt<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42172784-bb"><span class="identifier">assign</span></a><span class="special">(</span><span class="identifier">InIt</span><span class="special">,</span> <span class="identifier">InIt</span> <span class="identifier">last</span> <span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42178672-bb"><span class="identifier">assign</span></a><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">T</span> <span class="special">&gt;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> FwdIt<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42182176-bb"><span class="identifier">assign</span></a><span class="special">(</span><span class="identifier">FwdIt</span><span class="special">,</span> <span class="identifier">FwdIt</span> <span class="identifier">last</span> <span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42188064-bb"><span class="identifier">assign</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">value_type</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">allocator_type</span> <a class="link" href="vector.html#idp42193040-bb"><span class="identifier">get_allocator</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">stored_allocator_type</span> <span class="special">&amp;</span> <a class="link" href="vector.html#idp42196896-bb"><span class="identifier">get_stored_allocator</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">const</span> <span class="identifier">stored_allocator_type</span> <span class="special">&amp;</span> <a class="link" href="vector.html#idp42201584-bb"><span class="identifier">get_stored_allocator</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42206288-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="vector.html#idp42210128-bb"><span class="identifier">begin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42213984-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="vector.html#idp42217808-bb"><span class="identifier">end</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">reverse_iterator</span> <a class="link" href="vector.html#idp42221632-bb"><span class="identifier">rbegin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reverse_iterator</span> <a class="link" href="vector.html#idp42225488-bb"><span class="identifier">rbegin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">reverse_iterator</span> <a class="link" href="vector.html#idp42229344-bb"><span class="identifier">rend</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reverse_iterator</span> <a class="link" href="vector.html#idp42233200-bb"><span class="identifier">rend</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="vector.html#idp42237056-bb"><span class="identifier">cbegin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_iterator</span> <a class="link" href="vector.html#idp42240912-bb"><span class="identifier">cend</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reverse_iterator</span> <a class="link" href="vector.html#idp42244736-bb"><span class="identifier">crbegin</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reverse_iterator</span> <a class="link" href="vector.html#idp42248592-bb"><span class="identifier">crend</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42252448-bb"><span class="identifier">empty</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="vector.html#idp42256272-bb"><span class="identifier">size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="vector.html#idp42260112-bb"><span class="identifier">max_size</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42263936-bb"><span class="identifier">resize</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42268352-bb"><span class="identifier">resize</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <a class="link" href="default_init_t.html" title="Struct default_init_t">default_init_t</a><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42274432-bb"><span class="identifier">resize</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">size_type</span> <a class="link" href="vector.html#idp42279520-bb"><span class="identifier">capacity</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42283408-bb"><span class="identifier">reserve</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42287104-bb"><span class="identifier">shrink_to_fit</span></a><span class="special">(</span><span class="special">)</span><span class="special">;</span> <span class="identifier">reference</span> <a class="link" href="vector.html#idp42290768-bb"><span class="identifier">front</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reference</span> <a class="link" href="vector.html#idp42295456-bb"><span class="identifier">front</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">reference</span> <a class="link" href="vector.html#idp42300144-bb"><span class="identifier">back</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reference</span> <a class="link" href="vector.html#idp42304832-bb"><span class="identifier">back</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">reference</span> <a class="link" href="vector.html#idp42309520-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">const_reference</span> <a class="link" href="vector.html#idp42314912-bb"><span class="keyword">operator</span><span class="special">[</span><span class="special">]</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">reference</span> <a class="link" href="vector.html#idp42320304-bb"><span class="identifier">at</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span><span class="special">;</span> <span class="identifier">const_reference</span> <a class="link" href="vector.html#idp42325440-bb"><span class="identifier">at</span></a><span class="special">(</span><span class="identifier">size_type</span><span class="special">)</span> <span class="keyword">const</span><span class="special">;</span> <span class="identifier">T</span> <span class="special">*</span> <a class="link" href="vector.html#idp42330848-bb"><span class="identifier">data</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">*</span> <a class="link" href="vector.html#idp42334736-bb"><span class="identifier">data</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">const</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42338624-bb"><span class="identifier">emplace_back</span></a><span class="special">(</span><span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">class</span><span class="special">...</span> Args<span class="special">&gt;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42344144-bb"><span class="identifier">emplace</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">Args</span> <span class="special">&amp;&amp;</span><span class="special">...</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42351280-bb"><span class="identifier">push_back</span></a><span class="special">(</span><span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42355584-bb"><span class="identifier">push_back</span></a><span class="special">(</span><span class="identifier">T</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42359936-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42365840-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">T</span> <span class="special">&amp;&amp;</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42371728-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">size_type</span><span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InIt<span class="special">&gt;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42379136-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">InIt</span><span class="special">,</span> <span class="identifier">InIt</span> <span class="identifier">last</span> <span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42387504-bb"><span class="identifier">insert</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42398880-bb"><span class="identifier">pop_back</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42402704-bb"><span class="identifier">erase</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">)</span><span class="special">;</span> <span class="identifier">iterator</span> <a class="link" href="vector.html#idp42407008-bb"><span class="identifier">erase</span></a><span class="special">(</span><span class="identifier">const_iterator</span><span class="special">,</span> <span class="identifier">const_iterator</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42412032-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">(</span><span class="special">(</span><span class="special">!</span><span class="identifier">container_detail</span><span class="special">::</span><span class="identifier">is_version</span><span class="special">&lt;</span> <span class="identifier">Allocator</span><span class="special">,</span> <span class="number">0</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">)</span><span class="special">)</span><span class="special">;</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42416864-bb"><span class="identifier">clear</span></a><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span> <span class="comment">// <a class="link" href="vector.html#idp42502400-bb">friend functions</a></span> <span class="keyword">friend</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42502960-bb"><span class="keyword">operator</span><span class="special">==</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">friend</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42507952-bb"><span class="keyword">operator</span><span class="special">!=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">friend</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42512944-bb"><span class="keyword">operator</span><span class="special">&lt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">friend</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42517936-bb"><span class="keyword">operator</span><span class="special">&gt;</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">friend</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42522928-bb"><span class="keyword">operator</span><span class="special">&lt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">friend</span> <span class="keyword">bool</span> <a class="link" href="vector.html#idp42527936-bb"><span class="keyword">operator</span><span class="special">&gt;=</span></a><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="keyword">friend</span> <span class="keyword">void</span> <a class="link" href="vector.html#idp42532944-bb"><span class="identifier">swap</span></a><span class="special">(</span><a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">,</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span><span class="special">)</span><span class="special">;</span> <span class="special">}</span><span class="special">;</span></pre></div> <div class="refsect1"> <a name="idp176976656"></a><h2>Description</h2> <p>A vector is a sequence that supports random access to elements, constant time insertion and removal of elements at the end, and linear time insertion and removal of elements at the beginning or in the middle. The number of elements in a vector may vary dynamically; memory management is automatic.</p> <p> </p> <div class="refsect2"> <a name="idp176977904"></a><h3>Template Parameters</h3> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> <pre class="literallayout"><span class="keyword">typename</span> T</pre> <p>The type of object that is stored in the vector </p> </li> <li class="listitem"><pre class="literallayout"><span class="keyword">class</span> <span class="identifier">Allocator</span> BOOST_CONTAINER_DOCONLY</pre></li> </ol></div> </div> <div class="refsect2"> <a name="idp176983408"></a><h3> <a name="boost.container.vectorconstruct-copy-destruct"></a><code class="computeroutput">vector</code> public construct/copy/destruct</h3> <div class="orderedlist"><ol class="orderedlist" type="1"> <li class="listitem"> <pre class="literallayout"><a name="idp42420880-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="special">)</span> <span class="keyword">noexcept</span><span class="special">(</span><span class="special">::</span><span class="identifier">boost</span><span class="special">::</span><span class="identifier">has_nothrow_default_constructor</span><span class="special">&lt;</span> <span class="identifier">Allocator</span> <span class="special">&gt;</span><span class="special">::</span><span class="identifier">value</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector taking the allocator as parameter.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Constant. </p> </li> <li class="listitem"> <pre class="literallayout"><span class="keyword">explicit</span> <a name="idp42424240-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="keyword">const</span> <span class="identifier">Allocator</span> <span class="special">&amp;</span> a<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector taking the allocator as parameter.</p> <p><span class="bold"><strong>Throws</strong></span>: Nothing</p> <p><span class="bold"><strong>Complexity</strong></span>: Constant. </p> </li> <li class="listitem"> <pre class="literallayout"><span class="keyword">explicit</span> <a name="idp42428480-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">size_type</span> n<span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector that will use a copy of allocator a and inserts n value initialized values.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor or allocation throws or T's value initialization throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to n. </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42432560-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">size_type</span> n<span class="special">,</span> <a class="link" href="default_init_t.html" title="Struct default_init_t">default_init_t</a><span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector that will use a copy of allocator a and inserts n default initialized values.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor or allocation throws or T's default initialization throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to n.</p> <p><span class="bold"><strong>Note</strong></span>: Non-standard extension </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42438048-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">size_type</span> n<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span> value<span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector and inserts n copies of value.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor or allocation throws or T's copy constructor throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to n. </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42442496-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">size_type</span> n<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">T</span> <span class="special">&amp;</span> value<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector that will use a copy of allocator a and inserts n copies of value.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocation throws or T's copy constructor throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to n. </p> </li> <li class="listitem"> <pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InIt<span class="special">&gt;</span> <a name="idp42447632-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">InIt</span> first<span class="special">,</span> <span class="identifier">InIt</span> last<span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector and inserts a copy of the range [first, last) in the vector.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor or allocation throws or T's constructor taking a dereferenced InIt throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to the range [first, last). </p> </li> <li class="listitem"> <pre class="literallayout"><span class="keyword">template</span><span class="special">&lt;</span><span class="keyword">typename</span> InIt<span class="special">&gt;</span> <a name="idp42452992-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">InIt</span> first<span class="special">,</span> <span class="identifier">InIt</span> last<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector that will use a copy of allocator a and inserts a copy of the range [first, last) in the vector.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor or allocation throws or T's constructor taking a dereferenced InIt throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to the range [first, last). </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42459072-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span> x<span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Copy constructs a vector.</p> <p><span class="bold"><strong>Postcondition</strong></span>: x == *this.</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor or allocation throws or T's copy constructor throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to the elements x contains. </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42464128-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="identifier">std</span><span class="special">::</span><span class="identifier">initializer_list</span><span class="special">&lt;</span> <span class="identifier">value_type</span> <span class="special">&gt;</span> il<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span> a <span class="special">=</span> <span class="identifier">allocator_type</span><span class="special">(</span><span class="special">)</span><span class="special">)</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Constructs a vector that will use a copy of allocator a and inserts a copy of the range [il.begin(), il.last()) in the vector</p> <p><span class="bold"><strong>Throws</strong></span>: If allocator_type's default constructor throws or T's constructor taking a dereferenced initializer_list iterator throws.</p> <p><span class="bold"><strong>Complexity</strong></span>: Linear to the range [il.begin(), il.end()). </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42469024-bb"></a><span class="identifier">vector</span><span class="special">(</span><a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;&amp;</span> x<span class="special">)</span> <span class="keyword">noexcept</span><span class="special">;</span></pre> <p><span class="bold"><strong>Effects</strong></span>: Move constructor. Moves x's resources to *this.</p> <p><span class="bold"><strong>Throws</strong></span>: Nothing</p> <p><span class="bold"><strong>Complexity</strong></span>: Constant. </p> </li> <li class="listitem"> <pre class="literallayout"><a name="idp42473264-bb"></a><span class="identifier">vector</span><span class="special">(</span><span class="keyword">const</span> <a class="link" href="vector.html" title="Class template vector">vector</a> <span class="special">&amp;</span> x<span class="special">,</span> <span class="keyword">const</span> <span class="identifier">allocator_type</span> <span class="special">&amp;</span> a<span class="special">)</span><span class="special">;</span></pre>defined(BOOST_CONTAINER_DOXYGEN_INVOKED) <p><sp