図1に示すように、リサイズ(N)
これはn個の要素を収容することができるように、容器の長さの大きさを調整します。
nはコンテナの現在のサイズより小さい場合、余分な要素が削除されます。
それ以外の場合は、付加価値要素を使用して初期化されます。
図2に示すように、リサイズ(N、T)
もう一つのパラメータtは、すべての要素が新たにtと追加を初期化します。
リザーバー()の使用は唯一のものです
リザーブ(N)
n個の要素の事前に割り当てられたメモリ空間。
第一の容器容量(容量)と大きさ(長さ)の差を調べるために、この2つの機能の違いを理解します。
これは、コンテナの数と現在の要素の大きさを指します。
それは保存することができる新たなストレージ・スペースを割り当てる必要があり前容量は、容器内の要素の総数を指します。
これは、事前に割り当てられたストレージスペースの大きさということができます。
リサイズ()サイズと機能は密接容器に関する。リサイズ(n)を呼び出した後、容器の大きさがnです。
調整容器のサイズに応じて、容量に影響する容量よりも大きいです。
リザーブ()容量と機能は密接容器に関する。
リザーブ(n)を呼び出した後、容器の容量であれば、<N、容量がnに等しいように、メモリ空間を再割り当てします。
容量> = Nそれならば?容量変わりません。
2つの関数の使用から見つけることができ、コンテナが機能した後リサイズ()を呼び出して、すべてのスペースがすでに初期化されている、それが直接アクセスすることができます。
スペースの準備()関数があらかじめ割り当てられて初期化されず、それにはアクセスできません。
#include
の#include
名前空間stdを使用。
INTメイン()
{
ベクトルparamsは(100)。
size_tのLEN = params.size()。
size_tのサイズ= params.capacity()。
params.resize(50);
len = params.size();
size = params.capacity();
params.resize(500);
len = params.size();
size = params.capacity();
params.reserve(100);
len = params.size();
size = params.capacity();
params.reserve(1000);
len = params.size();
size = params.capacity();
return 0;
}