摘自:博主柳婼
vector
是乙個模板類
所以使用時要用
vectora
或者vectorb
這樣的方式來宣告乙個
vector
vector
是乙個類似於
int a
的整數陣列,而
vector
是乙個類似於
string a
的字串陣列
clear()
清空resize()
改變大小
push_back()
在尾部新增元素
pop_back()
在尾部刪除元素
empty()
測試是否為空
vector
之間可以直接賦值或者作為函式的返回值
push_back()
和pop_back()
無需改變陣列長度,自動會增加和減小陣列長度
增加長度後增加的元素值為0
測試**:
#include
#include
usingnamespacestd;
intmain()
vector<int> b;
b = a;
cout << "print b: 直接賦值"
<< endl;
for(inti = 0; i < b.size(); i++)
cout << endl;
cout << "a.size() = "
<< a.size() << endl;
cout << "print1:"
<< endl;
for(inti = 0; i < a.size(); i++)
cout << endl;
a.resize(11);
cout << "a.size() = after resize(11) :"
<< a.size() << endl;
cout << "print2 after resize(11):"
<< endl;
for(inti = 0; i < a.size(); i++)
cout << endl;
a.push_back(22);
cout << "print3 after push_back(22):"
<< endl;
for(inti = 0; i < a.size(); i++)
cout << endl;
a.pop_back();
cout << "a.size() = after pop_back() :"
<< a.size() << endl;
cout << "print4 after pop_back():"
<< endl;
for(inti = 0; i < a.size(); i++)
cout << endl;
cout << "a.empty()?:"
<< a.empty() << endl;
a.clear();
cout << "a.size() = after a.clear() :"
<< a.size() << endl;
cout << "print5 after a.clear():"
<< endl;
for(inti = 0; i < a.size(); i++)
cout << endl;
return0;
} c.assign(beg,end)
將(beg; end)
區間中的資料賦值給c。
c.assign(n,elem)將n
個elem
的拷貝賦值給c。
c. at(idx)
傳回索引
idx所指的資料,如果
idx越界,丟擲
out_of_range
。c.back()
傳回最後乙個資料,不檢查這個資料是否存在。
c.begin()
傳回迭代器
中的第乙個資料位址。
c.capacity()
返回容器中資料個數。
c.clear()
移除容器中所有資料。
c.empty()
判斷容器是否為空。
c.end() //
指向迭代器中末端元素的下乙個,指向乙個不存在元素。
c.erase(pos)
// 刪除
pos位置的資料,傳回下乙個資料的位置。
c.erase(beg,end)
刪除[beg,end)
區間的資料,傳回下乙個資料的位置。
c.front()
傳回第乙個資料。
get_allocator
使用建構函式
返回乙個拷貝。
c.insert(pos,elem)
// 在
pos位置插入乙個
elem
拷貝,傳回新資料位置
c.insert(pos,n,elem)
// 在
pos位置插入n個
elem資料,
無返回值
c.insert(pos,beg,end)
// 在
pos位置插入在
[beg,end)
區間的資料。無返回值
c.max_size()
返回容器中最大資料的數量。
c.pop_back()
刪除最後乙個資料。
c.push_back(elem)
在尾部加入乙個資料。
c.rbegin()
傳回乙個逆向佇列的第乙個資料。
c.rend()
傳回乙個逆向佇列的最後乙個資料的下乙個位置。
c.resize(num)
重新指定佇列的長度。
c.reserve()
保留適當的容量。
c.size()
返回容器中實際資料的個數。
c1.swap(c2)
// 將c1和
c2元素互換
STL 動態陣列 vector
動態陣列,使用時需要加標頭檔案vector。它的特點可以實現動態增長的陣列。也就是說我們不必關心該陣列事先定義的容量是多少,它的大小會動態增長。與陣列類似的是,我們可以在末尾進行元素的新增和刪除,也可以進行元素值的隨機訪問和修改。include include include vector 的建立 ...
STL之vector動態陣列(詳解)
vector收錄在stl裡,是一種特殊的資料結構。它的中文名字叫做 動態陣列 或者 不定長陣列 有時也被翻譯成 容器 基本操作 1 構造乙個vector vectorvec。其中t是我們陣列要儲存的資料型別,可以是int float double等。初始的時候vec是空的 2 通過push back...
STL學習筆記 vector容器 動態陣列
簡介 vector是將元素置於乙個動態陣列中進行管理的容器 vector可以隨機訪問元素,支援索引值直接訪問,用或者at 方法 vector下尾部新增或者刪除元素非常快,但在中間或頭部插入或者刪除元素比較耗時 標頭檔案 include vector基本操作 vectorv v.push back 1...