C 標準庫型別vector(一)

2021-10-09 16:07:03 字數 1549 閱讀 3283

標準庫型別vector用於表示物件的集合,其中所有物件的型別都相同。集合中的每個物件都有乙個與之對應的索引,索引用於訪問物件。我們可稱之為「容器」。

#include

using std::vector;

vector v1

vector str;

//預設初始化,str不含任何元素

vector articles =

;//列表初始化,注意該處為花括號

圓括號和花括號的區別

(1)圓括號:提供的值是用來構造vector物件的。

(2)花括號:提供的值是用來列表初始化vector物件的。

vector<

int>v1(

10);//v1有10個元素,每個的值都是0

vector<

int> v2

;//v2有1個元素,該元素的值是10

vector<

int>v3(

10,1)

;//v3有10個元素,每個的值都是1 (容量,初值)

vector<

int> v4

;//v4有2個元素,值分別是10和1

如果想建立乙個vector物件令其包含多個元素時,最好的方法是:先建立乙個空vector,然後在執行時利用vector的成員函式push_back向其中新增元素。push_back負責把乙個值當成vector物件的尾元素「壓到」vector物件的「尾端」。

vector<

int> v2;

for(

int i =

0; i !=

100;

++i)

v2.push_back

(i);

vector物件與c語言的陣列型別有所不同。

vector物件可以滿足c++標準的「在執行時高效快速地新增元素」的要求。在定義vector物件時,設定其大小也就沒什麼必要。只有一種例外,就是所有元素的值都是一樣的。

如果迴圈體內部包含有向vector物件新增元素的語句,則不能使用範圍for迴圈。

v.

empty()

//如果v不含有任何元素,返回真;否則返回假

v.size()

//返回v中元素的個數

v.push_back

(t)//向v的尾端新增乙個值為t的元素

v[n]

//返回v中第n個位置上元素的引用

v1 = v2 //用v2中元素的拷貝替換v1中的元素

v1 =

//用列表中元素的拷貝替換v1中的元素

v1 == v2 //v1和v2相等當且僅當它們的元素數量相同且對應位置的元素值都相同

v1 != v2

<

,<=

,>

,>=

//以字典順序進行比較

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...