A<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Fvector%2Fvector_capacity</id>
		<title>C++ Tutorial/vector/vector capacity - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://cppe.ru/index.php?action=history&amp;feed=atom&amp;title=C%2B%2B_Tutorial%2Fvector%2Fvector_capacity"/>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_capacity&amp;action=history"/>
		<updated>2026-04-04T02:33:40Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_capacity&amp;diff=2233&amp;oldid=prev</id>
		<title> в 14:21, 25 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_capacity&amp;diff=2233&amp;oldid=prev"/>
				<updated>2010-05-25T14:21:17Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 14:21, 25 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_capacity&amp;diff=2234&amp;oldid=prev</id>
		<title>Admin: 1 версия:&amp;#32;Импорт контента...</title>
		<link rel="alternate" type="text/html" href="http://cppe.ru/index.php?title=C%2B%2B_Tutorial/vector/vector_capacity&amp;diff=2234&amp;oldid=prev"/>
				<updated>2010-05-25T10:29:13Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия: Импорт контента...&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Demonstrating the STL vector capacity==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  int N = 10000; // size of vectors&lt;br /&gt;
  vector&amp;lt;int&amp;gt; vector1, vector2;&lt;br /&gt;
  for (int k = 0; k != N; ++k) {&lt;br /&gt;
    vector&amp;lt;int&amp;gt;::size_type cap = vector1.capacity();&lt;br /&gt;
    vector1.push_back(k);&lt;br /&gt;
    if (vector1.capacity() != cap)&lt;br /&gt;
      cout &amp;lt;&amp;lt; &amp;quot;k: &amp;quot; &amp;lt;&amp;lt; k &amp;lt;&amp;lt; &amp;quot;, new capacity: &amp;quot; &amp;lt;&amp;lt; vector1.capacity() &amp;lt;&amp;lt; endl;&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;k: 0, new capacity: 1&lt;br /&gt;
k: 1, new capacity: 2&lt;br /&gt;
k: 2, new capacity: 4&lt;br /&gt;
k: 4, new capacity: 8&lt;br /&gt;
k: 8, new capacity: 16&lt;br /&gt;
k: 16, new capacity: 32&lt;br /&gt;
k: 32, new capacity: 64&lt;br /&gt;
k: 64, new capacity: 128&lt;br /&gt;
k: 128, new capacity: 256&lt;br /&gt;
k: 256, new capacity: 512&lt;br /&gt;
k: 512, new capacity: 1024&lt;br /&gt;
k: 1024, new capacity: 2048&lt;br /&gt;
k: 2048, new capacity: 4096&lt;br /&gt;
k: 4096, new capacity: 8192&lt;br /&gt;
k: 8192, new capacity: 16384&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==Demonstrating the STL vector capacity and reserve functions==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;cassert&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main()&lt;br /&gt;
{&lt;br /&gt;
  int N = 10000; // size of vectors&lt;br /&gt;
  vector&amp;lt;int&amp;gt; vector1, vector2;&lt;br /&gt;
  for (int k = 0; k != N; ++k) {&lt;br /&gt;
    vector&amp;lt;int&amp;gt;::size_type cap = vector1.capacity();&lt;br /&gt;
    vector1.push_back(k);&lt;br /&gt;
    if (vector1.capacity() != cap)&lt;br /&gt;
      cout &amp;lt;&amp;lt; &amp;quot;k: &amp;quot; &amp;lt;&amp;lt; k &amp;lt;&amp;lt; &amp;quot;, new capacity: &amp;quot; &amp;lt;&amp;lt; vector1.capacity() &amp;lt;&amp;lt; endl;&lt;br /&gt;
  }&lt;br /&gt;
  vector2.reserve(N);&lt;br /&gt;
  for (int k = 0; k != N; ++k) {&lt;br /&gt;
    vector&amp;lt;int&amp;gt;::size_type cap = vector2.capacity();&lt;br /&gt;
    vector2.push_back(k);&lt;br /&gt;
    if (vector2.capacity() != cap)&lt;br /&gt;
      cout &amp;lt;&amp;lt; &amp;quot;k: &amp;quot; &amp;lt;&amp;lt; k &amp;lt;&amp;lt; &amp;quot;, new capacity: &amp;quot; &amp;lt;&amp;lt; vector2.capacity() &amp;lt;&amp;lt; &amp;quot;\n&amp;quot;;&lt;br /&gt;
  }&lt;br /&gt;
  return 0;&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&amp;lt;pre class=codeResult&amp;gt;k: 0, new capacity: 1&lt;br /&gt;
k: 1, new capacity: 2&lt;br /&gt;
k: 2, new capacity: 4&lt;br /&gt;
k: 4, new capacity: 8&lt;br /&gt;
k: 8, new capacity: 16&lt;br /&gt;
k: 16, new capacity: 32&lt;br /&gt;
k: 32, new capacity: 64&lt;br /&gt;
k: 64, new capacity: 128&lt;br /&gt;
k: 128, new capacity: 256&lt;br /&gt;
k: 256, new capacity: 512&lt;br /&gt;
k: 512, new capacity: 1024&lt;br /&gt;
k: 1024, new capacity: 2048&lt;br /&gt;
k: 2048, new capacity: 4096&lt;br /&gt;
k: 4096, new capacity: 8192&lt;br /&gt;
k: 8192, new capacity: 16384&amp;lt;/pre&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==make a big vector and then deallocate all its memory==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;algorithm&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   // make a big vector and then deallocate all its memory&lt;br /&gt;
   const int big_size = 10000;&lt;br /&gt;
   vector&amp;lt;double&amp;gt; v( big_size );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;Before clearing, the capacity of the vector is &amp;quot;&lt;br /&gt;
      &amp;lt;&amp;lt; v.capacity() &amp;lt;&amp;lt; &amp;quot; and its size is &amp;quot; &amp;lt;&amp;lt; v.size();&lt;br /&gt;
   v.clear();&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nAfter clearing, the capacity of the vector is &amp;quot;&lt;br /&gt;
      &amp;lt;&amp;lt; v.capacity() &amp;lt;&amp;lt; &amp;quot; and its size is &amp;quot; &amp;lt;&amp;lt; v.size();&lt;br /&gt;
   vector&amp;lt;double&amp;gt;().swap( v );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nAfter swapping, the capacity of the vector is &amp;quot;&lt;br /&gt;
      &amp;lt;&amp;lt; v.capacity() &amp;lt;&amp;lt; &amp;quot; and its size is &amp;quot; &amp;lt;&amp;lt; v.size();&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==make a big vector and then minimize its memory==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;algorithm&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   const int big_size = 10000;&lt;br /&gt;
   vector&amp;lt;double&amp;gt; v( big_size );&lt;br /&gt;
   // make a big vector and then minimize its memory&lt;br /&gt;
   v.assign( big_size, 3.33 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\n\nBefore resizing, the capacity of the vector is &amp;quot;&lt;br /&gt;
      &amp;lt;&amp;lt; v.capacity() &amp;lt;&amp;lt; &amp;quot; and its size is &amp;quot; &amp;lt;&amp;lt; v.size();&lt;br /&gt;
   v.resize( 1 );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nAfter resizing, the capacity of the vector is &amp;quot;&lt;br /&gt;
      &amp;lt;&amp;lt; v.capacity() &amp;lt;&amp;lt; &amp;quot; and its size is &amp;quot; &amp;lt;&amp;lt; v.size();&lt;br /&gt;
   vector&amp;lt;double&amp;gt;( v ).swap( v );&lt;br /&gt;
   cout &amp;lt;&amp;lt; &amp;quot;\nAfter swapping, the capacity of the vector is &amp;quot;&lt;br /&gt;
      &amp;lt;&amp;lt; v.capacity() &amp;lt;&amp;lt; &amp;quot; and its size is &amp;quot; &amp;lt;&amp;lt; v.size();&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;br /&gt;
&lt;br /&gt;
==make the vector as large as possible without reallocating==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
&amp;lt;source lang=&amp;quot;cpp&amp;quot;&amp;gt;#include &amp;lt;algorithm&amp;gt;&lt;br /&gt;
#include &amp;lt;iostream&amp;gt;&lt;br /&gt;
#include &amp;lt;vector&amp;gt;&lt;br /&gt;
using namespace std;&lt;br /&gt;
template &amp;lt;class T&amp;gt;&lt;br /&gt;
void print(T&amp;amp; c){&lt;br /&gt;
   for( typename T::iterator i = c.begin(); i != c.end(); i++ ){&lt;br /&gt;
      std::cout &amp;lt;&amp;lt; *i &amp;lt;&amp;lt; endl;&lt;br /&gt;
   }&lt;br /&gt;
}&lt;br /&gt;
int main( )&lt;br /&gt;
{&lt;br /&gt;
   vector&amp;lt;double&amp;gt; v( 5, 2.78 );&lt;br /&gt;
   v[2] = 0.0;&lt;br /&gt;
   // make the vector as large as possible without reallocating&lt;br /&gt;
   v.resize( v.capacity(), 2.78 );&lt;br /&gt;
}&amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>