vector
简单的用例
#include<iostream>
#include<bits/stdc++.h>
#include<cstdio>
#include<algorithm>
#include<vector>
#include<list>
#include<string.h>
#include<string>
#include<queue>
#include<math.h>
#include<stack>
#include<map>
#include<malloc.h>
using namespace std;
int main(){
vector<int> vi;
for(int i=1;i<=5;i++){
vi.push_back(i);
}
/*vi.begin()为取vi的元素首地址,而it指向这个地址
vector<int>::iterator it=vi.begin();
for(int i=0;i<5;i++){
printf("%d ",*(it+i));//输出vi[i]
}*/
//vector的迭代器不支持it<vi.end()写法,因此循环条件只能用it!=vi.end();
for(vector<int>::iterator it=vi.begin();it!=vi.end();it++){
printf("%d ",*it);
}
return 0;
}
int main(){
vector<int> vi;
for(int i=1;i<=5;i++){
vi.push_back(i);
}
for(int i=1;i<=3;i++){
vi.pop_back();
}
/*for(int i=0;i<vi.size();i++){
printf("%d ",vi[i]);
}*/
for(vector<int>::iterator it=vi.begin();it!=vi.end();it++){
printf("%d ",*it);
}
printf("\n%d\n",vi.size());
vi.insert(vi.begin()+1,-1);
for(vector<int>::iterator it=vi.begin();it!=vi.end();it++){
printf("%d ",*it);
}
vi.erase(vi.begin()+1);
printf("\n");
for(vector<int>::iterator it=vi.begin();it!=vi.end();it++){
printf("%d ",*it);
}
vi.erase(vi.begin(),vi.begin()+2);
printf("\n%d",vi.size());
vi.clear();
printf("\n%d\n",vi.size());
return 0;
}