容器容量和容器大小(capacity和size)

2021-09-26 19:36:51 字數 1236 閱讀 2513

(1)容器容量:容器所能容納元素的個數,通常大於容器的實際儲存元素的個數。

s.capacity();//檢視容器容量

s.reserve(len);//擴充套件當前容器的容量,如果len大於當前容器容量,那麼將會將容器的容量擴充套件為len,且不會對新擴充套件的空間進行初始化;當len小於等於當前容器容量時,什麼也不做。

(2)容器大小:容器中當前存在元素的個數。

s.size();//檢視當前容器的中元素的個數

s.resize(len);//設定當前容器的容量,如個len大於當前容器中元素的個數,新增的元素將並初始化為0。len小於容器的實際大小時,會將len之後的元素的全部清除為0。

通過情況向容器的容量是大於等於容器的大小的,就像杯子和杯子中的水的關係。一般需要容器的大小不會引起記憶體的重新分配(向杯子中加水),但修改容器的容量就會導致容器記憶體的重新分配(原來的杯子太小了,需要換新的杯子)。

#include #include using namespace std;

int main()

cout << endl;

intarr.resize(3);

intarr.reserve(3);

cout << "2、修改後、容器size:" << intarr.size() << ",容器capacity:" << intarr.capacity() << endl;

viter = intarr.begin();

for (; viter != intarr.end();++viter)

cout << endl;

intarr.resize(6);

intarr.reserve(10);

cout << "3、修改後、容器size:" << intarr.size() << ",容器capacity:" << intarr.capacity() << endl;

C vector容器 容量和大小

vector容量和大小 功能描述 對vector容器的容量和大小操作 函式原型 如下 include using namespace std include vector容器的容量和大小操作 void printvector vector int v cout endl void test01 pr...

vector容器06之容量和大小

函式原型 vector的容量和大小 void print vector int v cout endl void test else 重新指定大小 v.resize 10 520 利用過載版本,可以指定預設填充值 引數2 print v 如果重新指定的比原來長了,預設用0填充新位置 cout 改變大...

C 學習紀錄 vector容器 容量與大小

1 empty 判斷容器是否為空。為空返回真,不為空返回假。2 capacity 返回容器的容量 3 size 返回容器中元素的個數。元素個數不一定等於容器容量。4 resize int num 重新指定容器的長度為num。若容器變長,以預設值0填充新位置。如果容器變短,則末尾超出容器長度的元素被刪...