C 的vector容器用法

2021-07-10 16:34:14 字數 2297 閱讀 9934

vector是c++標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。vector之所以被認為是乙個容器,是因為它能夠像容器一樣存放各種型別的物件,簡單地說vector是乙個能夠存放任意型別的動態陣列,能夠增加和壓縮資料。為了可以使用vector,必須在你的標頭檔案中包含下面的**:

#include

vector屬於std命名域的,因此需要通過命名限定,如下完成你的**:

using std::vector;     vectorv;

或者連在一起,使用全名:

std::vectorv;

建議使用全域性的命名域方式:

using namespace std;

1.vector的宣告

vectorc;   建立乙個空的vector

vectorc1(c2); 建立乙個vector c1,並用c2去初始化c1

vectorc(n) ; 建立乙個含有n個elemtype型別資料的vector;

vectorc(n,elem); 建立乙個含有n個elemtype型別資料的vector,並全部初始化為elem;

c.~vector(); 銷毀所有資料,釋放資源;

2.vector容器中常用的函式。(c為乙個容器物件)

c.push_back(elem);   在容器最後位置新增乙個元素elem

c.pop_back();            刪除容器最後位置處的元素

c.at(index);                返回指定index位置處的元素

c.begin();                   返回指向容器最開始位置資料的指標

c.end();                      返回指向容器最後乙個資料單元的指標+1

c.front();                     返回容器最開始單元資料的引用

c.back();                     返回容器最後乙個資料的引用

c.max_size();              返回容器的最大容量

c.size();                      返回當前容器中實際存放元素的個數

c.capacity();               同c.size()

c.resize();                   重新設定vector的容量

c.reserve();                同c.resize()

c.erase(p);               刪除指標p指向位置的資料,返回下指向下乙個資料位置的指標(迭代器)

c.erase(begin,end)     刪除begin,end區間的資料,返回指向下乙個資料位置的指標(迭代器)

c.clear();                    清除所有資料

c.rbegin();                  將vector反轉後的開始指標返回(其實就是原來的end-1)

c.rend();                     將vector反轉後的結束指標返回(其實就是原來的begin-1)

c.empty();                   判斷容器是否為空,若為空返回true,否則返回false

c1.swap(c2);               交換兩個容器中的資料

c.insert(p,elem);          在指標p指向的位置插入資料elem,返回指向elem位置的指標       

c.insert(p,n,elem);      在位置p插入n個elem資料,無返回值

c.insert(p,begin,end) 在位置p插入在區間[begin,end)的資料,無返回值

3.vector中的操作

operator 如: c.[i];

同at()函式的作用相同,即取容器中的資料

使用例子:

#include "stdafx.h"

#include "iostream"

#include "stdlib.h"

#include

using namespace std;

int _tmain(int argc, _tchar* argv)

for(i=0;i

v.pop_back(); //刪除最後乙個元素

for(i=0;i//

for(i=0;i

for(it=v.begin();it!=v.end();it++)

printf("\n");

system("pause");

return 0;

}

vector容器用法

1 標頭檔案 include.2 建立vector物件,vector vec 3 尾部插入數字 vec.push back a 4 使用下標訪問元素,cout vector iterator it for it vec.begin it vec.end it cout it 6 插入元素 vec.i...

C 中vector容器用法

目錄 vector容器說明 1 vector容器的初始化 vectora t是容器內元素的變數型別,可以是任何合法資料型別,a是變數名稱 2 vector向量容器常用方法 3 迭代器遍歷 容器型別 變數型別 iterator 迭代器名 4 vector容器中的一些重要演算法 5 vector常用方法...

vector容器用法詳解

vector類稱作向量類,它實現了動態陣列,用於元素數量變化的物件陣列。像陣列一樣,vector類也用從0開始的下標表示元素的位置 但和陣列不同的是,當vector物件建立後,陣列的元素個數會隨著vector物件元素個數的增大和縮小而自動變化。include stdafx.h include inc...