vector操作小結

2021-07-27 18:08:01 字數 1326 閱讀 8510

前面了解了一下vector,現在我們來看看vector的相關操作。

int main()

; vectorv5 = ;

vectorv6(3);//只提供數量而略去初始值,int->0,string->空串

vector::iterator it;

//push_back向vector物件中新增元素

for (int i = 0; i != 10; i++)

v.push_back(i);

for (unsigned i = 0; i < v4.size(); i++)返回值為無符號

cout << v4[i];//容器支援下標操作,列印1234

cout << endl;

返回引用),

//vector支援》,《等比較

if (v4 > v5)

cout << "yes" << endl;

else

cout << "no" << endl;//列印no。和比較字串一樣,乙個乙個元素比較,而不是比較size

if (!v4.empty())

cout << v4[0] << ','《上面都是單獨測試,每個測試互不干擾,每次vector的值都是初始值。

下面是整體測試,前面測試修改的vector,後面保留其值,並測試。

int main()

; vectorv5 = ;

vector::iterator it;

//resize改變容器大小,用來增大或縮小容器。不夠按型別補齊,多了則會被刪除

v4.resize(10);//將v4的大小改變為10,多的用0補齊

v5.resize(2);//將v5的大小改變為2,多餘的刪除,則v5為

//capacity是容器容量,size是容器中元素的數量

cout << v4.capacity() << endl;//10

cout << v4.size() << endl;//10,resize講擴大的部分初始化了

表示至少分配能容納n個元素的記憶體空間,多的記憶體不初始化

v4.reserve(100);

cout << v4.capacity() << endl;//100

cout << v4.size() << endl;//10

v5.reserve(20);

cout << v5.capacity() << endl;//20

v5.shrink_to_fit();//歸還多餘記憶體

cout << v5.capacity() << endl;//2

return 0;

}

vector相關操作小結

其實我原本只想對vector小結一下的 好吧,重點還是它,其他兩個由於性質相似所以大概說一下vector,array,valarray是c 提供的三個陣列模板,各自有著不同的優勢,三者均位於 命名空間std中,使用時均需要包括與之同名的標頭檔案 常用物件建立語法 vector vt n elem v...

vector的用法小結

include include using namespace std int main 令i依次為ivec中的每乙個元素,並顯示 for auto i ivec cout i cout endl 新增元素到ivec尾端 for int i 11 i 20 i ivec.push back i 令i...

vector操作整理

其迭代器函式原型 iterator begin const iterator begin const iterator end const iterator end const reverse iterator rbegin const reverse iterator rbegin const r...