需要引入头文件#include<vector> 才可以使用
初始化一维vector
1 vector<int> v;//默认为空 2 vector<int> v1(v);//使用vector v 初始化v1 3 vector<int> v2(v.begin(),v.end());//使用v的区间[begin,end]初始化v1,区间可自定义 4 vector<int> v3(v.begin()+1,v.begin()+3);//用区间[begin+1,begin+3)第二个到第三个 初始化 v5 5 vector<int> v4(15);//初始化 n=15个元素的 vector 且值为0 6 vector<int> v5(15,10);//初始化n=15个元素 且值为m=10的vector
vector左闭右开区间 v.end()没有值; v3(v.begin()+1,v.begin()+3)初始化的是时候,到达不了b.begin()+3,属于右开区间,[1,3) 包括 1,2 两个数据
样例:
代码:
1 #include <iostream> 2 #include<vector> 3 using namespace std; 4 void show(vector<int>& v){ 5 for(int i=0;i<(int)v.size();i++){ 6 cout<<v[i]<<" "; 7 } 8 cout<<endl; 9 } 10 int main() 11 { 12 //vector初始化 需要引入头文件#include<vector> 才可以使用 13 vector<int> v;//默认为空 14 int data,n; 15 cin>>n;//代表个数 16 for(int i=0;i<n;i++){ 17 //cin>>v[i];//错,因为没有初始化 vector v的大小,不能使用v[i] 18 cin>>data; 19 v.push_back(data); 20 } 21 vector<int> v1(v);//使用vector v 初始化v1 22 vector<int> v2(v.begin(),v.end());//使用v的区间[begin,end]初始化v1,区间可自定义 23 vector<int> v3(v.begin()+1,v.begin()+3);//用区间[begin+1,begin+3)第二个到第三个 初始化 v5 24 vector<int> v4(15);//初始化 n=15个元素的 vector 且值为0 25 vector<int> v5(15,10);//初始化n=15个元素 且值为m=10的vector 26 show(v); 27 show(v2); 28 show(v3); 29 show(v4); 30 show(v5); 31 return 0; 32 }
输入:
10 1 2 3 4 5 6 7 8 9 10
输出