2023-03-25 10:10:59作者:光伏下载站
c++ vector是在c++中开发过程中c++ vector作为一个十分有用的容器,许多朋友还不是很清楚c++ vector用法,不知道c++ vector到底有什么优秀的用法,不用着急一起来看看c++ vector用法详解来增加自身对c++ vector的了解吧。
1:基本操作
(1)头文件#include<vector>.
(2)创建vector对象,vector<int> vec;
(3)尾部插入数字:vec.push_back(a);
(4)使用下标访问元素,cout<<vec[0]<<endl;记住下标是从0开始的。
(5)使用迭代器访问元素.
vector<int>::iterator it;
for(it=vec.begin();it!=vec.end();it++)
cout<<*it<<endl;
(6)插入元素: vec.insert(vec.begin()+i,a);在第i+1个元素前面插入a;
(7)删除元素: vec.erase(vec.begin()+2);删除第3个元素
vec.erase(vec.begin()+i,vec.end()+j);删除区间[i,j-1];区间从0开始
(8)向量大小:vec.size();
(9)清空:vec.clear();
2:vector的元素不仅仅可以使int,double,string,还可以是结构体,但是要注意:结构体要定义为全局的,否则会出错。
#include<stdio.h>
#include<algorithm>
#include<vector>
#include<iostream>
using namespace std;
typedef struct rect
{
int id;
int length;
int width;
//对于向量元素是结构体的,可在结构体内部定义比较函数,下面按照id,length,width升序排序。
bool operator< (const rect &a) const
{
if(id!=a.id)
return id<a.id;
else
{
if(length!=a.length)
return length<a.length;
else
return width<a.width;
}
}
}Rect;
int main()
{
vector<Rect> vec;
Rect rect;
rect.id=1;
rect.length=2;
rect.width=3;
vec.push_back(rect);
vector<Rect>::iterator it=vec.begin();
cout<<(*it).id<<' '<<(*it).length<<' '<<(*it).width<<endl;
return 0;
}
3:算法
(1) 使用reverse将元素翻转:需要头文件#include<algorithm>
reverse(vec.begin(),vec.end());将元素翻转(在vector中,如果一个函数中需要两个迭代器,
一般后一个都不包含.)
(2)使用sort排序:需要头文件#include<algorithm>,
sort(vec.begin(),vec.end());(默认是按升序排列,即从小到大).
可以通过重写排序比较函数按照降序比较,如下:
定义排序比较函数:
bool Comp(const int &a,const int &b)
{
return a>b;
}
调用时:sort(vec.begin(),vec.end(),Comp),这样就降序排序。
相关攻略
明日方舟奇趣蛋怎么打 明日方舟奇趣蛋正确打法攻略
2023-08-07
光遇star徽章国服能用吗 光遇star徽章国服什么时候能用
2023-08-07
奥拉星手游礼包码一览 奥拉星手游礼包码2021年5月合集
2023-08-07
斗罗大陆武魂觉醒土系武魂最强搭配方案 斗罗大陆武魂觉醒土系武魂最强搭配
2023-08-07
狼人对决怎么玩 狼人对决新手必看攻略
2023-08-07
狼人对决卡牌大全一览 狼人对决角色技能规则介绍
2023-08-07
炉石传说实名认证在哪 炉石传说实名认证怎么改
2023-08-07
王者荣耀5.11更新了什么 王者荣耀5月11日更新内容一览
2023-08-07
航海王热血航线张大仙可用兑换码 航海王热血航线最新张大仙兑换码大全
2023-08-07
坎公骑冠剑未来出什么角色 坎公骑冠剑未来卡池日期表一览
2023-08-07
版权声明:部分内容为互联网整合,文中观点不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,请发送邮件至举报,一经查实,本站将立刻删除。
相关文章
国风市井经营手游叫我大掌柜新版钱庄风云上线
电脑软件文章资讯
下载xbox无法登陆错误0x800488AB解决办法(xbox无法登陆0x409)
电脑软件文章资讯
下载金铲铲之战腐朽之盾怎么过 金铲铲之战腐朽之盾攻略大全
电脑软件文章资讯
下载蚂蚁庄园6月6日答案(蚂蚁庄园6月6日答案最新2022年)
电脑软件文章资讯
下载原神魔药研析第三关怎么过 魔药研析第三阶层阵容搭配
电脑软件文章资讯
下载谷歌浏览器Mac版怎么设置字幕样式-设置字幕样式的方法(chrome字幕如何设置)
电脑软件文章资讯
下载qq浏览器导入其他浏览器收藏夹方法(qq浏览器导入其他浏览器收藏夹方法怎么设置)
电脑软件文章资讯
下载KINDLE怎么用(kindle怎么用电脑导入电子书)
电脑软件文章资讯
下载