C STL vector容器 簡單實用整理

2021-10-02 04:21:31 字數 1446 閱讀 5310

1.1 介紹:vector 是c++中stl庫里的乙個容器,實質就是乙個長度未定的陣列,而且他還有一些常用操作「封裝」在了vector型別內部。

1.2 舉例說明:vector是乙個模板類,所以需要用vector< int > a或者vector< double > b來宣告乙個vector,並且要引用#include< vector >標頭檔案。

vector< int > a是宣告了乙個長度可變的int型陣列a,類似於int a[ ]的整數陣列,同理vector< string > a類似於string a[ ]的字串陣列。

2.1 標頭檔案:#include< vector >

2.2 宣告陣列:

#include

#include

using

namespace std;

intmain()

2.3 vector中封裝的便捷操作:假如a是乙個vector,可以用a.size()讀取他的大小;a.resize()改變大小;a.p ush_back()向尾部新增元素;a.pop_back()刪除最後乙個元素;a.empty()判斷a是否為空;a.clear()移除容器中所有資料。其中的引數如下具體說明:

a.

size()

//讀取a的大小

a.resize

(h+1

)//改變a的大小為h+1,即下標為0到h

a.push_back

(b)//在a的尾部新增乙個元素b

a.pop_back()

//刪除a的最後乙個元素

a.empty()

//判斷a是否為空,若為空返回1,若不空返回0

a.erase

(h)//刪除h位置的資料,傳回下乙個資料的位置

a.erase

(n,m)

//刪除[n,m)區間的資料,傳回下乙個資料的位置

a.clear()

//移除容器中所有資料,無引數

2.4 vector的遍歷:

1、下標遍歷

for(

int i =

0;i < a.

size()

;i++

)2、auto關鍵字遍歷

for(

auto i:a)

3、迭代器遍歷

for(vector<

int>

::iterator iter = a.

begin()

;iter != a.

end(

);iter++

)

C STL Vector簡單講解

線性容器,內儲存資料的型別相同 優點 快速訪問資料 動態擴充套件容量 資料連續儲存,空間利用率高 缺點 資料插入時間代價高 動態增加容量時,時間代價較高 適用 需要大量隨機訪問,不需要經常插入刪除的情況 include stdafx.h include include using namespace...

C STL vector容器和大小操作

功能描述 對vector容器和大小操作 函式原型 empty 判斷容器是否為空 capacity 容器的容量 size 返回容器指定長度為num,若容器變長,則以預設值填充新位置。如果容器變短,則末尾超出容器長度的元素被刪除 resize int num,elem 重新指定容器的長度為num,若容器...

時間快取容器TimeCacheMap的實現

storm中實現了乙個容器,它裡面的元素存一定時間,超過該時間的元素便可能被刪除,以保證容器可以加入更多新容器。實現思想 初始化n個容器,n個容器組成鍊錶,元素的最短儲存時間為t,每次將新元素插入到鍊錶頭部的容器內,每隔t n 1 時間,將鍊錶尾部的容器刪除,同時在鍊錶頭部插入新容器,每次刪除在n個...