[C++] vector

Posted on Mon, Mar 29, 2021 C++
實作日期:20210329
更新日期:20211022

vector是一種長度可變的線性容器,要使用時須引入#include <vector>

宣告

vector<變數型態> 名稱;

基本型態

vector<int> v1 = {10,20,30};

直接賦值

vector<int> v2(10);

宣告長度10的vector

vector<int> v3(10,5);

宣告長度10的vector,每個位置都填入5

vector<int> v = {1,2,3};

vector<int> v4(v);//或
vector<int>v4 = v;

複製v的內容到v4中

vector<int> v = {1,2,3,4,5};
vector<int> v5(v.begin+2,v.end);

複製v從v[2]到最後的內容 從陣列複製也適用

vector<int> v[9];

宣告vector的二維陣列

物件方法

iterators

容量

迭代器(iterator)

還沒讀完,有些難理解,可以參考

C++ 迭代器 iterator @ 程式語言教學 :: 痞客邦 ::

(2) 上述所言的迭代器乃是正向迭代器,順序由前到後。還有一種迭代器為逆向迭代器,順序由後到前。正向迭代器和逆向迭代器為不同的資料形態。 (3) vector ::const_iterator I; 。其功用與一般迭代器幾乎相同,惟一不同者在於:常數迭代器僅只能對容器中資料進行 「讀取」的動作,而無法存入或更改其值。也需注意,我們無法將 常數迭代器的值指派給其他迭代器,沒事少用常數迭代器。