vector(vector c 用法是什么)
- 作者: 五速梦信息网
- 时间: 2026年03月18日 13:44

vector c 用法是什么呢?不清楚的小伙伴们来看看小编今日的分享吧!
vector 是空间向量类型,它可以承载很多类型的数据信息,如多个整数金额,因此称其为器皿。vector 是C STL的一个关键组员,应用它时必须包括库函数:
#include<vector>;
一、vector的复位
(1) vector<int> a(10); //界定了10个整形原素的空间向量(尖括号中为原素类型名,它可以是一切合理合法的数据信息类型),但沒有得出初始值,其值是不确定性的。
#include<iostream>
#include<math.h>
#include<vector>
using namespace std;
int main()
{
vector<int> a(10);
for(int i=0;i<a.size();i )
cout<<a[i]<<" ";
return 0;
}
(2)vector<int> a(10,1); //界定了10个整形原素的空间向量,且得出每一个原素的初始值为1
检测
#include<iostream>
#include<math.h>
#include<vector>
using namespace std;
int main()
{
vector<int> a(10,1);
for(int i=0;i<a.size();i )
cout<<a[i]<<" ";
return 0;
}
(3)vector<int> a(b); //用b空间向量来建立a空间向量,总体拷贝性取值
检测:
#include<iostream>
#include<math.h>
#include<vector>
using namespace std;
int main()
{
vector<int> b(10,3);
vector<int> a(b);
for(int i=0;i<a.size();i )
cout<<a[i]<<" ";
return 0;
}
(4)vector<int> a(b.begin(),b.begin 3); //界定了a数值b中第0个到第2个(共3个)原素
检测:
#include<iostream>
#include<math.h>
#include<vector>
using namespace std;
int main()
{
vector<int> b;
for(int i=0;i<10;i )
b.push_back(i);
vector<int> a(b.begin(),b.begin() 3); //界定了a数值b中第0个到第2个(共3个)原素
for( i=0;i<a.size();i )
cout<<a[i]<<" ";
return 0;
}
(5)int b[7]={1,2,3,4,5,9,8};
vector<int> a(b,b 7); //从二维数组中得到初始值 从b逐渐 一共7个
检测:
#include<iostream>
#include<math.h>
#include<vector>
using namespace std;
int main()
{
int b[7]={1,2,3,4,5,6,7};
vector<int> a(b,b 7); //从二维数组中得到初始值 从b逐渐 一共7个!!!!
for( int i=0;i<a.size();i )
cout<<a[i]<<" ";
return 0;
}
二、vector目标的好多个关键实际操作,举例子如下所示:
(1)a.assign(b.begin(), b.begin() 3); //b为空间向量,将b的0~2个原素组成的空间向量赋给a
(2)a.assign(4,2); //是a只含4个原素,且每一个原素为2
(3)a.back(); //回到a的最后一个原素
(4)a.front(); //回到a的第一个原素
(5)a[i]; //回到a的第i个原素,当且仅当a[i]存有
(6)a.clear(); //清除a中的原素
(7)a.empty(); //分辨a是否为空,空则回到ture,不空则返回false
(8)a.pop_back(); //删掉a空间向量的最后一个原素
(9)a.erase(a.begin() 1,a.begin() 3); //删掉a中第1个(从第0个起算)到第2个原素,换句话说删掉的原素从a.begin() 1起算(包含它)一直到a.begin() 3(不包括它)
(10)a.push_back(5); //在a的最后一个空间向量后插入一个原素,其数值5
(11)a.insert(a.begin() 1,5); //在a的第1个原素(从第0个起算)的部位插进标值5,如a为1,2,3,4,插进原素后为1,5,2,3,4
(12)a.insert(a.begin() 1,3,5); //在a的第1个元素(从第0个起算)的部位插进3数量,其值都为5
(13)a.insert(a.begin() 1,b 3,b 6); //b为二维数组,在a的第1个原素(从第0个起算)的部位插入b的第3个原素到第5个元素(不包括b 6),如b为1,2,3,4,5,9,8 ,插进原素后为1,4,5,9,2,3,4,5,9,8
(14)a.size(); //回到a中原素的数量;
(15)a.capacity(); //回到a在存储空间中一共可以容下的原素数量
(16)a.resize(10); //将a的目前原素数量调到10个,更多就是删,少则补,其值任意
(17)a.resize(10,2); //将a的目前原素数量调到10个,更多就是删,少则补,其数值2
(18)a.reserve(100); //将a的容积(capacity)扩大至100,换句话说如今检测a.capacity();的情况下传参是100.这类实际操作仅有在必须给a加上很多信息的过程中才 看起来更有意义,由于这将防止运行内存多次容积扩大实际操作(当a的容积不够时电脑上会全自动扩充,自然这必定减少特性)
(19)a.swap(b); //b为空间向量,将a中的要素和b中的因素开展全面性互换
(20)a==b; //b为空间向量,向量的较为实际操作也有!=,>=,<=,>,<
三、次序浏览vector的多种方法,举例子如下所示:
(1)向向量a中加上原素
1、运用push_back()
vector<int> a;
for(int i=0;i<10;i )
a.push_back(i);
2、还可以从二维数组中挑选 原素向空间向量中加上
int a[6]={1,2,3,4,5,6};
vector<int> b;
for(int i=1;i<=4;i )
b.push_back(a[i]);
3、还可以从目前空间向量中挑选 原素向空间向量中加上
int a[6]={1,2,3,4,5,6};
vector<int> b;
vector<int> c(a,a 4);
for(vector<int>::iterator it=c.begin();it<c.end();it )
b.push_back(*it);
4、还可以文本文件中载入原素向空间向量中加上
ifstream in("data.txt");
vector<int> a;
for(int i; in>>i)
a.push_back(i);
5、【错误观念】
vector<int> a;
for(int i=0;i<10;i )
a[i]=i;
//这类作法及其相近的行为全是失误的。一开始我就犯过这样的不正确,之后发觉,下标只有用以获得已具有的原素,而如今的a[i]或是空的目标
(2)从空间向量中载入原素
1、根据下标方法载入
int a[6]={1,2,3,4,5,6};
vector<int> b(a,a 4);
for(int i=0;i<=b.size()-1;i )
cout<<b[i]<<" ";
2、根据解析xml器方法载入
int a[6]={1,2,3,4,5,6};
vector<int> b(a,a 4);
for(vector<int>::iterator it=b.begin();it!=b.end();it )
cout<<*it<<" ";
以上便是小编今日的共享了,期待可以作用到大伙儿。
- END -
相关文章
-
vdlpantone联名系列丝绒唇膏有哪些颜色(vdlpantone联名系列丝绒唇膏试色)
vdlpantone联名系列丝绒唇膏有哪些颜色(vdlpantone联名系列丝绒唇膏试色)
- 互联网
- 2026年03月18日
-
vcsel芯片是什么(华为MateBook X系统)
vcsel芯片是什么(华为MateBook X系统)
- 互联网
- 2026年03月18日
-
vcf是什么格式(Windows视窗系统通信薄用户的存储格式)
vcf是什么格式(Windows视窗系统通信薄用户的存储格式)
- 互联网
- 2026年03月18日
-
vega11相当于什么显卡
vega11相当于什么显卡
- 互联网
- 2026年03月18日
-
vega8相当于什么显卡(Vega8相当于什么显卡)
vega8相当于什么显卡(Vega8相当于什么显卡)
- 互联网
- 2026年03月18日
-
VENTI珠宝 法式浪漫的风格
VENTI珠宝 法式浪漫的风格
- 互联网
- 2026年03月18日






