STL之Vector 不定長陣列

2021-09-08 11:34:43 字數 1281 閱讀 1878

vector是同一種物件的集合,每乙個物件都有乙個相應

的整數索引值。和string物件一樣,標準庫將負責管理與儲存元素相關的類存。

引入標頭檔案

#include

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

vectorv2(v1) v2是v1的乙個副本

vectorv3(n,i) v3包括n個值為i的元素

vectorv4(n) v4含有值初始化的元素的n個副本

假設沒有指定元素的初始化式。那麼標準庫將自行提供乙個元素初始值進行值初始化。

這個由庫生成的初始值將用來初始化容器中的每乙個元素,詳細的值為何。取決於儲存在vector中元素的資料型別。

假設vector儲存內建型別如int。那麼標準庫將用0值建立元素初始化式

vectorvv(10);      //10個元素,每乙個被初始化為0

假設vector儲存的是含有建構函式的類型別的元素,標準庫將用該型別的預設的建構函式建立元素的初始化式

vectorvvvv(10)      //10個元素,每乙個被初始化為空字串

還有第三種情況,元素型別可能是未定義建構函式的類型別。這樣的情況下。標準庫仍產生乙個帶初始值的物件,這個物件的每乙個成員進行了值初始化。

除此之外。若

vectorvv;      //初始化第乙個元素為10。其餘依照預設值(0)初始化 

幾種重要的操作

v.empty()               假設v為空,則返回true。否則返回false

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

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

v[n] 返回v中位置為n的元素

v1=v2 把v1中的元素替換為v2中元素的副本

v1==v2 假設v1與v2相等,則返回true

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

size()返回對應vector類定義的size_type的值。

vector::size_type             //error

vector::size_type    //ok

push_back()函式將新元素加入到vector最後面。

STL之Vector 不定長陣列

vector是同一種物件的集合,每個物件都有乙個對應 的整數索引值。和string物件一樣,標準庫將負責管理與儲存元素相關的類存。引入標頭檔案 include vectorv1 vector儲存型別為t的物件。預設建構函式,v1為空 vectorv2 v1 v2是v1的乙個副本 vectorv3 n...

不定長陣列 vector

使用需要包含標頭檔案 include vector是乙個模板類,所以需要用vectora或者vectorb這種方式宣告。vector的常用操作 int len a.size 返回vector長度 a.resize 100 把a長度變為100 a.push back 10 把10新增到尾部 a.pop...

不定長陣列 vector

vector是乙個不定長陣列模板類,所以需要用vectora或者vectorb這樣的方式來進行宣告乙個vector。vector是乙個類似於int a的整數陣列,而vector就是乙個類似於string a的字串陣列。使用vector時要加 include標頭檔案 常用的vector陣列的方法有 i...