vector是一種可以儲存任意型別的動態陣列,屬於序列式容器,可以用sort對其進行排序,底層資料結構是陣列,可以隨機訪問元素。
#include
#include
#include
#include
using namespace std;
int main()
//遍歷動態陣列
for(i=0;i<10;i++) // 最普通的遍歷
cout<::iterator it="a.begin();">
for(;it!=a.end();it++)
cout<
cout<::reverse_iterator iq="a.rend()-1;">
for(;iq!=a.rbegin()-1;iq--) //疑惑,看來不能完全照書敲,實踐出真知。
cout<
cout<::reverse_iterator ir="a.rbegin();">
for(;ir!=a.rend();ir++) //
cout<
cout<
cout<
//動態陣列的大小
cout<
//動態陣列的交換
a.swap(b);
cout<
//對動態陣列指定位置進行賦值
a.reserve(36); //reserve就是改變記憶體分給a的大小,不試不知道,一試嚇一跳,如果你被改的值大於a的size,可以改變,若小於a的size,則不可以改變。
如果換為這句,就成了下圖
cout正確的結果:
STL之vector學習筆記
參考sgi stl 及 侯捷 stl原始碼剖析 概述 vector是動態空間,隨著元素的加入,它的內部機制會自行擴充空間以容納新元素。但是它不是單純地 配置新空間 資料移動 釋放舊空間,它實際配置的大小會比客戶需求要大一點定義 sgi stl的vector實現於stl vector.h中,而不是ve...
STL 學習之vector測試
vector 是向量陣列,一端開口的陣列,其記憶體結構圖如下所示 可見其在尾部插入資料速度很快,而在其他地方插入資料將會很慢 void testvector vectortest vec clock t timestart clock for long i 0 i ran max i catch e...
C 學習之STL(一)vector
c primer plus讀書筆記 三 復合型別 中已經簡單介紹過vector是什麼,這個系列主要是介紹stl特性。vectorc 建立乙個空的vector vectorc1 c2 建立乙個vector c1,並用c2去初始化c1 vectorc n 建立乙個含有n個elemtype型別資料的vec...