C++中 vector容器——模板類陣列
阿新 • • 發佈:2019-01-23
對vector容器的一點理解,相對於陣列,vector容器可以不固定大小,但是需要而外的記憶體
空間,這是用空間來換取陣列動態大小的一種方式
1.定義
vector <int> A; 定義了一個空的int型陣列
vector<double> B(n); 定義了一個長度為n的double型陣列
vector<int> B(C); 定義一個C的副本
vector<int> D(n,i); 定義並初始化D,為n個i元素
2.基本的操作
一. 插入操作
尾部插入 A.push_back(i); 把元素i插入A的尾部
指定位置插入 A.insert(p,i) 在迭代器p前插入元素i
二.刪除操作
A.erase(p); 刪除迭代器p所指向的元素
A.pop_back(); 彈出最後一個元素,並不會返回
三.遍歷
通過下標(和陣列一樣)
通過迭代器遍歷
#include<iostream> #include<vector> using namespace std; int main() { int i; vector<int> A; for(i=0;i<5;i++) A.push_back(2*i+1); for(i=0;i<5;i++) //利用下標遍歷 cout<<A[i]<<" "; cout<<endl; vector<int>::iterator it; //定義了一個迭代器 for(it=A.begin();it!=A.end();it++) //利用迭代器遍歷 cout<<*it<<" "; cout<<endl; for(i=0;i<5;i++) cout<<A.at(i)<<" "; }