当前位置:网站首页>STL-deque
STL-deque
2022-08-10 21:49:00 【干饭小白】
deque简介
deque是双端数组,而vector是单端的。
deque在接口上和vector非常相似,在许多操作的地方可以直接替换
deque可以随机存取元素(at() [])
deque在头部和尾部添加或移动元素非常快
deque对象的默认构造
deque采用模板类实现,deque对象的默认构造形式: deque<T>deqT;
deque尾部添加移除操作
deque.push_back(elem); //在容器尾部添加一个数据
deque.push_front(elem); //在容器头部插入一个数据
deque.pop_back(); //删除容器最后一个数据
deque.pop_push(); //删除容器第一个数据
deque的数据存取
deque.at(index); //越界抛出异常 out_of_range
deque[index]; //越界不会抛出异常,直接报错
deque.front(); //返回第一个数据
deque.back(); //返回最后一个数据
deque迭代器
deque.begin(); //返回容器中第一个元素的迭代器
deque.end(); //返回容器中最后一个元素之后的迭代器
deque.rbegin(); //返回容器中倒数第一个元素的迭代器
deque.rend(); //返回元素中倒数最后一个元素的迭代器
for(deque<int>::iterator it=deq.begin();it!=deq.end();++it)
{
cout<<*it<<endl;
}
for(deque<int>::reverse_iterator rit=deq.rbegin();it!=deq.rend();++rit)
{
cout<<*rit<<endl;
}
deque对象的带参构造函数
deque(beg,end) //左闭右开 [beg,end)
deque(n,elem) //构造函数将n个elem拷贝给本身
deque(const deque &deq) //拷贝构造函数
deque的赋值
deque.assign(beg,end) //左闭右开
deque.assign(n,elem) //将 n 个elem拷贝赋值给本身
deque& operator=(const deque &deq) //重载等号操作符
deque.swap(deq) //将deq与本身的元素互换
deque的大小
deque.size() //返回容器中元素的个数
deque.empty() //判断容器释放为空
deque.resize(num) //重新指定容器的长度num
deque.resize(num,elem) //重新指定容器的长度为num,若容器变长则以elem值填充
deque的插入
deque.insert(pos,elem) //在pos位置插入一个elem元素的拷贝,返回新数据的位置
deque.insert(pos,n,elem) //在pos位置插入n个elem数据,无返回值
deque.insert(pos,beg,end) //在pos位置插入[beg,end)区间的数据,无返回值
deque的删除
deque.clear() //移除容器的所有数据
deque.erase(beg,end) //删除[beg,end)区间的数据,返回下一个数据的位置
deque.erase(pos) //删除pos位置的数据,返回下一个数据的位置
边栏推荐
- 【PCBA方案】电子握力测试仪方案she‘ji
- LeetCode-498 - Diagonal Traversal
- 使用 Cloudreve 搭建私有云盘
- QT笔记——用VS + qt 生成dll 和 调用生成的dll
- Application of Spatial 3D Model Reconstruction Based on Pix4Dmapper - Spatial Analysis and Site Selection
- Black cats take you learn Makefile article 13: a Makefile collection compile problem
- An article to teach you a quick start and basic explanation of Pytest, be sure to read
- 艺术与科技的狂欢,阿那亚2022砂之盒沉浸艺术季
- How to secure users in LDAP directory service?
- 电力系统潮流计算(牛顿-拉夫逊法、高斯-赛德尔法、快速解耦法)(Matlab代码实现)
猜你喜欢
Shell编程规范与变量
【PCBA solution】Electronic grip strength tester solution she'ji
LeetCode-402-移掉K位数字
Redis Performance Impact - Asynchronous Mechanisms and Response Latency
C#【必备技能篇】Hex文件转bin文件的代码实现
APP UI自动化测试常见面试题,或许有用呢~
FPGA - 7系列 FPGA内部结构之Memory Resources -03- 内置纠错功能
win系统下pytorch深度学习环境安装
Live Classroom System 08-Tencent Cloud Object Storage and Course Classification Management
What are the concepts, purposes, processes, and testing methods of interface testing?
随机推荐
扩展中国剩余定理
MySQL Advanced Commands
艺术与科技的狂欢,阿那亚2022砂之盒沉浸艺术季
camera preview process --- from HAL to OEM
win系统下pytorch深度学习环境安装
阿里巴巴、蚂蚁集团推出分布式数据库 OceanBase 4.0,单机部署性能超 MySQL
谁是边缘计算服务的采购者?是这六个关键角色
APP UI自动化测试常见面试题,或许有用呢~
高数_复习_第5章:多元函数微分学
什么是Jmeter?Jmeter使用的原理步骤是什么?
Using SylixOS virtual serial port, serial port free implementation system
美味的佳肴
关于 DataFrame: 处理时间
使用 Cloudreve 搭建私有云盘
【SQL刷题】Day3----SQL必会的常用函数专项练习
Use Cloudreve to build a private cloud disk
FPGA - 7系列 FPGA内部结构之Memory Resources -03- 内置纠错功能
xshell (sed 命令)
12 Recurrent Neural Network RNN2 of Deep Learning
如何保护 LDAP 目录服务中的用户安全?