標準庫型別 vector 表示物件的集合,也稱容器。
#include
using
std::vector ;
構造初始化:使用(),數字表示元素個數。
列表初始化:使用,數字表示元素。列表中的元素必須是相同型別,否則嘗試轉化為構造初始化。
// v1 有10個元素,使用預設初始化=0
vector
v1(10);
// v1 有1個元素10
vector
v2;
如果 vector 的元素無法確定或者元素太多,一般先聲名乙個空的 vector,然後使用 push_back 新增元素。
// 迴圈讀入,存放在 vector 中
string word;
vector
text;
while(cin >> word)
// 建立乙個包含0~99的vector
比較,下標操作與string型別類似,注意:
// 統計不同分數段的人數
vector
scores(11, 0);
unsigned grade;
while(cin >> grade)
vector 是可增長的陣列實現,內部一陣列的方式儲存
迭代器成員:
聲名定義迭代器
auto b = v.begin();
auto e = v.end();
// 使用迭代器把第乙個單詞改為大寫
string s("***")
for(auto it = s.begin(); it != s.end() && !isspace(*it); ++it)
*it = toupper(*it);
迭代器的型別
vector
v;const
vector
cv;// it1 為 vector::iterator 型別
auto it1 = v.begin();
// it2 為 vector::const_iterator 型別
auto it2 = cv.begin();
為了便於得到 const_iterator 型別的返回值,可用下面兩個成員:
使用迭代器完成二分搜尋:
// 要搜尋的數
int num = xx;
// 待搜尋的 vector
vector
text
auto beg = text.begin(), end = text.end();
auto mid = text.begin() + (end - beg)/2;
while(mid != end && *mid != num)
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...