vector功能
1.vector是乙個在c++標準模板庫中的部分內容,它是乙個多功能的,能夠操作多種資料結構和演算法的模板類和函式庫。
2.是乙個能夠存放任意型別的動態陣列。
3.vector是動態空間,隨著元素的加入,它的內部機制會自行擴充空間以容納新元素。
4.向量長度較長時效率比較低。
序列式容器:vector,deque,list
vector:將元素置於乙個動態陣列中加以管理,可以隨機訪問元素(用索引直接訪問),陣列尾部新增或移除元素非常快速。但是在中部或頭部安插元素比較費時;
deque:是「double-ended queue」的縮寫,可以隨機訪問元素(用索引直接訪問),陣列頭部和尾部新增或移除元素都非常快速。但是在中部或頭部安插元素比較費時;
list:雙向鍊錶,不提供隨機訪問(按順序走到需訪問的元素,o(n)),在任何位置上執行插入或刪除動作都非常迅速,內部只需調整一下指標;
1.push_back 在陣列的最後新增乙個資料2.pop_back 去掉陣列的最後乙個資料
3.at 得到編號位置的資料
4.begin 得到陣列頭的指標
5.end 得到陣列的最後乙個單元+1的指標
6.front 得到陣列頭的引用
7.back 得到陣列的最後乙個單元的引用
8.max_size 得到vector最大可以是多大
9.capacity 當前vector分配的大小
10.size 當前使用資料的大小
11.resize 改變當前使用資料的大小,如果它比當前使用的大,者填充預設值
12.reserve 改變當前vecotr所分配空間的大小
13.erase 刪除指標指向的資料項
14.clear 清空當前的vector
15.rbegin 將vector反轉後的開始指標返回(其實就是原來的end-1)
16.rend 將vector反轉構的結束指標返回(其實就是原來的begin-1)
17.empty 判斷vector是否為空
18.swap 與另乙個vector交換資料
應用例項
#include#include#include
#include
using
namespace
std;
bool compare(int a, int
b) void
main()
cout
<<"
容器容量為:
"<< obj.size()
//去掉最後乙個元素
cout << "
去掉最後乙個元素之後容器容量為:
"<< obj.size()
//清除容器中的資料
cout << "
清除之後容器容量為:
"<< obj.size()
obj.push_back(6);
obj.push_back(
88);
obj.push_back(
192);
obj.push_back(
413);
//排序使用sort(int start,int end)方法需要新增#include 標頭檔案
//從小到大排序
sort(obj.begin(),obj.end());
cout
<< "
從小到大排序:
"
cout
<< "\n"
;
//從大到小排序
reverse(obj.begin(), obj.end());
cout
<< "
從大到小排序:
"
cout
<< "\n"
;
//重寫sort方法
int a[10] = ;
sort(a, a + 10
, compare);
cout
<< "
重寫sort之後從大到小排序為:
"
cout
<< "\n"
; system(
"pause");
}
執行結果
0,1,2,3,4,容器容量為:5去掉最後乙個元素之後容器容量為:
4清除之後容器容量為:
0從小到大排序:
6,9,88,192,413
,從大到小排序:
413,192,88,9,6
,重寫sort之後從大到小排序為:
816,722,413,10,9,8,6,2,1,0,
二維陣列
#include#include#include
#include
using
namespace
std;
void
main()
cout
<< "\n"
; }
system(
"pause");
}
執行結果
第0行元素為:000000
第1行元素為:00
0000
第2行元素為:00
0000
第3行元素為:00
0000
第4行元素為:00
0000
第5行元素為:00
0000
C 中vector的用法
c 內建的陣列支援容器的機制,但是它不支援容器抽象的語義。要解決此問題我們自己實現這樣的類。在標準c 中,用容器向量 vector 實現。容器向量也是乙個類模板。標準庫vector型別使用需要的標頭檔案 include vector 是乙個類模板。不是一種資料型別,vector是一種資料型別。vec...
C 中vector的用法
1 在使用前要包含vector對應的標頭檔案 include 2 vector是同一種型別的物件的集合,每個物件都有乙個對應的整數索引值。我們把vector稱為容器,乙個容器中的所有物件都必須是同一種型別的。3 vector是乙個類模板 class template 模板允許程式設計師編寫單個類或函...
c 中的vector用法
在c 中,vector是乙個十分有用的容器,下面對這個容器做一下總結。1 基本操作 1 標頭檔案 include.2 建立vector物件,vectorvec 3 尾部插入數字 vec.push back a 4 使用下標訪問元素,cout vector iterator it for it vec...