c++ vector用法详解 c++ vector用法总结
分类:软件教程
时间:2020-03-24 16:24:01
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),这样就降序排序。
相关应用
相关文章推荐
-
visual studio code怎么编写c++程序 安装扩展即可
visual studio code是微软推出的一款专业代码编辑器 ,很多程序员在初次使用它的时候发现它无法编写最基本的C++语言,这只不过是软件还没有完全配置好,下面就来说一下visual studio ...[详情]
-
腾讯:研发职员占比68%过半 C++是腾讯最受欢迎编程语言
3月18日下午消息,腾讯今天对外发布2020年度《腾讯研发大数据报告》,披露了2020年腾讯在研发投入、研发效能及开源协同等方面的数据。报告显示,2020年腾讯研发人员占公司总人数的68%...[详情]
- 怪物猎人世界冰原太刀怎么用?太刀用法先容
- 怪物猎人世界冰原太刀居合斩用法详解
- 原神捕风瓶怎么用?原神捕风瓶用法分享
- 和平精英五曜令牌怎么用?和平精英五曜令牌用法
- 腾讯课堂积分规则是什么?腾讯课堂积分规则及用法
- 灰烬阵线战车汇总 灰烬阵线战车用法及角色引荐
- c++ vector用法详解 c++ vector用法总结
- 百度输出法番外版是什么 百度输出法番外版用法引见
同类排行
最新软件教程
- 腾讯qq怎么更改个人游戏实名认证信息_qq防沉迷系统实名认证在哪里更改
- 抖音怎么解绑银行卡帐号详细步骤_怎样解绑抖音绑定的银行卡账号图解
- 钉钉打卡怎么改定位位置不被发现_钉钉打卡如何更改自己虚拟位置的信息
- 小红书如何加陌生人为好友的步骤_小红书上怎样查找添加微信好友
- 百度地图不走高速怎么设置导航功能_百度地图如何设置不走高速的导航功能
- 百度地图APP怎么看实时街景时光机_百度地图如何看360全景街景地图
- 小红书APP底下文字内容怎么复制_如何把小红书上的文案内容提取下来
- 小红书怎么发视频笔记收视率高_小红书笔记如何发布视频才有流量
- qq密码忘记了怎么找回手机号也换了_qqAPP密码如何最快找回的方法
- 直播钉钉怎么签到打卡上课发群里_钉钉APP学生群签到如何打卡上课
最近应用
-
WiFi万能钥匙极速版
2023-12-10
立即下载 -
小米路由管理器app
2023-12-09
立即下载 -
UC浏览器极速版app
2023-12-08
立即下载