標準庫型別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...