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的更多相关文章
随机推荐
- C#方法参数传递-同时使用ref和out关键字
在方法参数传递中,可以同时使用ref和out关键字,但是要注意ref和out参数传递的不同. using System;class Program{static void Main(){ Pro ...
- 不用中间变量交换a 和b的值
// 不用中间变量的写法 ,假如 a=13, b=8; a=a+b =21; //此时 a=21; b=8; b=a-b=13; //此时a=21; b=13; a=a-b=8; //相当于 a=21 ...
- Python2 和Python3 的差异总结
一.基本语法差异 1.1 核心类差异 Python3对Unicode字符的原生支持 Python2中使用 ASCII 码作为默认编码方式导致string有两种类型str和unicode,Python3 ...
- 【翻译】std::list::remove - C++ Reference
公有成员函数 std::list::remove void remove(const value_type& val); 删除与给定值相等的元素 从容器中删除所有与 val 值相等的元素.li ...
- 编译错误 error C2451: “std::_Unforced”类型的条件表达式是非法的
part 1 编译器 vs2015 VC++. 完整的错误信息粘贴如下: d:\program files (x86)\microsoft visual studio 14.0\vc\include\ ...
- MySQL新建用户保存的时报错:The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
又是这种错, 以前没遇过, 没办法, 直接google. 下面看解决办法: 登录mysql, 当然了如果您登录不上(密码错误情况), 直接扔这个属性进去my.cnf配置文件skip-grant-tab ...
- JavaScript中变量提升------Hoisting
原谅链接:http://www.cnblogs.com/damonlan/archive/2012/07/01/2553425.html 因为这个问题很是经典,而且容易出错,所以在介绍一次.哈哈.莫怪 ...
- 20145127《java程序设计》第二次实验
一.实验内容及其步骤 1.要想对某个程序进行单元测试,我们先是在eclipse中建立了一个新的项目,项目的名字是TDDDmeo.并在这个新的项目里右键单击创建一个source floder.并将flo ...
- 20145302张薇《课程设计》数据恢复——WinHex实践
20145302张薇<课程设计>数据恢复--WinHex实践 实践内容 使用WinHex破损一个U盘 使用WinHex通过DBR备份数据来修复已损坏U盘 实践详细步骤 1.准备一个文件格式 ...
- CSS3实现小黄人动画
转载请注明出处,谢谢! 每次看到CSS3动画就心痒痒想试一下,记得一个多月前看了白树哥哥的一篇博客,突然开窍,于是拿他提供的demo试了一下,感觉很棒!下图为demo提供的动画帧设计稿. 自己也想说搞 ...