C++语法学习之Vector
Vector 使用说明
Vector代表是一个封装了动态大小数组的顺序容器,也就是一个动态数组(变长数组)
可以简单的认为,向量是一个能够存放任意类型
的动态数组。
引用:
#include < vector>
。下文统一采用的万能头,就不一一引用了
初始化
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> a ; vector<int> a(10) ; vector<int> a(10, 1) ; vector<int> b(a) ; vector<int> b(a.begin(), a.begin()+3) ; }
|
增加函数
#include <iostream> #include <fstream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> a(5,1) ; vector<int> b(5) ; a.push_back(2); a.insert(a.begin(),3); a.insert(a.begin(),2,6); b.insert(b.begin(),a.begin(),a.end()); for(int i=0;i<a.size();i++) cout<<a[i]<<","; cout<<endl; for(int i=0;i<b.size();i++) cout<<b[i]<<","; return 0; }
|
删除函数
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> b(5,1) ; b.erase(b.begin(),b.begin()+2); b.erase(b.begin()+2); b.pop_back(); b.clear(); return 0; }
|
遍历函数
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> b(5,2) ; b.push_back(3); cout<<b.at(5)<<endl; cout<<b.front()<<endl; cout<<b.back()<<endl; b.begin(); b.end(); b.rbegin(); b.rend(); return 0; }
|
图示:
判断函数
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> a(5,3) ; vector<int> b; if(a.empty()) cout<<"a empty"<<endl; if(b.empty()) cout<<"b empty"<<endl; return 0; }
|
大小函数
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> a(5,3) ; vector<int> b; a.pop_back(); cout<<a.size()<<endl; cout<<a.capacity()<<endl; cout<<a.max_size()<<endl; return 0; }
|
其他函数
#include <iostream> #include <bits/stdc++.h> using namespace std; int main(){ vector<int> a(5,3) ; vector<int> b; swap(a,b); b.assign(5,1); b.assign(a.begin(),a.begin()+3); return 0; }
|