deque_01
A、头尾 添加/移除
A.1、deque::push_back(elemValue);
A.2、deque::pop_back();
A.3、deque::push_front(elemValue);
A.4、deque::pop_front();
B、随机存取
B.1、[?] ==> 越界时,程序 崩溃
B.2、at(?) ==> 越界时,抛异常 out_of_range
C、数据存取
C.1、T deque::front(); // 返回,不可用于设置
C.2、T deque::back(); // 返回,不可用于设置
1、构造函数
1.1、默认构造函数 ==> 无参构造函数
1.2、必定需要 复制构造函数 :deque<T> deqT(const deque& deq);
1.3、deque<T> deqT(iteratorBegin, iteratorEnd); // 迭代器区间[iteratorBegin, iteratorEnd)拷贝给deqT
注意: 这里可以传数组指针,数组指针在特定情况下可以当做迭代器使用
1.4、deque<T> deqT(n, elemValue); // n个elemValue复制给deqT
2、赋值
2.1、重载"="操作符
deque& = const deque& deq;
2.2、void deque<T>::assign(beg, end); // [beg, end)区间拷贝给
2.3、void deque<T>::assign(n, elemValue);// n个elemValue拷贝给
3、迭代器操作
3.1、const_iterator deque<T>::begin(); // 第1个
3.2、const_iterator deque<T>::end(); // 最后1个
3.3、const_reverse_iterator deque<T>::rbegin(); // 倒数第1个
3.4、const_reverse_iterator deque<T>::rend(); // 倒数最后1个
4、插入
注意: 拷贝插入(ZC: 也就是类实例的话,类必须提供复制构造函数)
iterator deque::insert(const_iterator, elemValue); // 返回新元素的位置,拷贝插入
void deque::insert(const_iterator, size_type n, elemValue);
void deque::insert(const_iterator, iterator beg, iterator end); // [beg, end)区间
5、删除
void deque::clear();
iterator deque::erase(const_iterator beg, const_iterator end); // [beg, end)区间,返回下一个元素的位置
iterator deque::erase(const_iterator pos); // 返回下一个元素的位置
6、交换
void deque<T>::swap(deque<T>&);
7、大小
size_type deque<T>::size();
bool deque<T>::empty();
void deque<T>::resize(size_type);
void deque<T>::resize(size_type, elemValue);
8、查找
9、
deque_01的更多相关文章
随机推荐
- iOS 网易彩票-4设置模块一
概述 基本上,每一款APP都有相应的设置模块.怎么设置才能更灵活和通用呢,这也是大家一直思考的.下面说说在网易彩票中,设置模块的设置思想. 基本上有三种方案: static cell(呆板,完全没有动 ...
- android studio 错误: 编码GBK的不可映射字符
在模块的build.gradle中加入: tasks.withType(JavaCompile) { options.encoding = "UTF-8" } JavaCompil ...
- HTML 显示/隐藏DIV的技巧(visibility与display的差别)
参考链接:http://blog.csdn.net/szwangdf/article/details/1548807 div的visibility可以控制div的显示和隐藏,但是隐藏后页面显示空白: ...
- Core Java 2
p267~p270: 1.一个方法不仅需要告诉编译器将要返回什么值, 还要告诉编译器有可能发生什么错误(以便在错误发生时用妥善的方式处理错误). 2.方法应该在首部声明所有可能抛出的异常. 3.方法抛 ...
- HCNP学习笔记之子网掩码的计算和划分详细
0x00 子网掩码的计算 TCP/IP网间网技术产生于大型主流机环境中,它能发展到今天的规模是当初的设计者们始料未及的.网间网规模的迅速扩展对IP地址模式的威胁并不是它不能保证主机地址的唯一性,而是会 ...
- C++面向对象高级开发课程(第一周)
0. 内存分区 计算机中的内存在用于编程时,被人为的进行了分区(Segment),分为: -“栈区”(Stack) -“堆区”(Heap) -全局区(静态 区,Static) -文字常量区和程序代码区 ...
- 2018-2019-1 1723《程序设计与数据结构》第1&2周作业 总结
作业地址 第一周作业: https://edu.cnblogs.com/campus/besti/CS-IMIS-1723-2/homework/2092 提交情况如图: 第二周作业: https:/ ...
- Python3基础 str translate 将指定字符转换成另一种特定字符
Python : 3.7.0 OS : Ubuntu 18.04.1 LTS IDE : PyCharm 2018.2.4 Conda ...
- CF620E New Year Tree 线段树 dfs序
luogu链接 题目大意: 有一个节点有颜色的树 操作1.修改子树的颜色 操作2.查询子树颜色的种类 注意,颜色种类小于60种 只有子树的操作,dfs序当然是最好的选择 dfs序列是什么,懒得讲了,自 ...
- centos6搭建redis集群搭建(单机多节点)
一.安装redis 1.安装gcc环境 yum install gcc-c++ 2.下载源码包并解压 wget http://download.redis.io/releases/redis-3.2. ...