C 標準庫vector型別的使用和操作總結

2022-06-07 09:12:07 字數 1271 閱讀 5775

正文

vector是一種型別物件的集合,它是一種順序容器,容器中的所有物件必須都是同一種型別。vector的物件是可以動態生長的,這說明它在初始化時可以不用指定大小,而是在使用時根據元素所需的空間動態增長。下面簡單介紹一下vector容器的使用和操作。

使用vector之前必須在程式前的庫包含中包含相應的標頭檔案,如下:

#includeusing std::vector;

vector定義了幾種建構函式,所以它提供了幾種初始化的方式,如下:

vectorv1;                vevtor儲存型別為t的物件。預設建構函式v1為空。

vector

v2(v1); v2是v1的乙個副本,v1和v2的元素型別必須相同

vector

v3(n,i); v3包含n個值為i的元素

vector

v4(n); v4包含初始化的元素的n個副本,預設元素值為0

vector的很多操作都類似於string物件的操作,下面僅僅列出一些常用的操作。

v.empty();                如果v為空,則返回true,否則返回false

v.size(); 返回v中元素的個數

v.push_back(t); 在v的末尾新增乙個值為t的元素

v[n]; 返回v中位置為n的元素,從0開始計數

v1=v2; 把v的內容替換為v2的乙個副本

v1==v2; 比較v1和v2的內容,相等則返回true,否則返回false

!=,<,<=,>和》=     保持這些操作符慣有的含義

值得注意的是在進行下標操作時,必須是已經存在的元素才能進行下標索引,否則通過下標索引賦值,不會新增任何元素,如:

vertorivec;

for(vector::size_type i=0;i!=10;++i)

ivec[i]=i;

//上面則條語句不會像容器新增任何元素,因為ivec是空的物件,所以應該改成下面的語句

vertorivec;

for(vector::size_type i=0;i!=10;++i)

ivec.push_back(i);

參考:

C 標準庫vector型別

vector屬於順序容器,所謂順序容器,就是元素的順序與元素的值無關,與元素加入容器的位置相對應。對於vector可以將其理解為可變大小陣列,支援快速隨機訪問,在尾部之外的位置插入刪除可能會比較慢。了解完概念接下來就開始學習它的用法 假設以下 前面都包含vector標頭檔案,幷包含using nam...

c 標準庫型別 vector

一 標準庫型別vector表示物件的集合,物件型別相同,需要 include using namespace std or using std vector 二 定義和初始化vector物件 vectorv1 vectorv2 v1 vectorv2 v1 vectorv3 n,val n個val元...

C 標準庫型別 vector

vector表示物件的集合,其中所有的物件的型別均相同。如果需要使用vector,需要 include using std vector vector name 其中t表示物件的型別,除了基本內建型別外,也可以是string,甚至是vector型別vectorv1 預設初始化 vectorv2 v1...