- 1、本文档共54页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第10章 类模板与STL编程 第10章 类模板 1. 类模板的定义 1. 类模板的定义 1. 类模板的定义 1. 类模板的定义 2. 类模板的实例化 2. 类模板的实例化 2. 默认模板参数 10.2 类模板应用 1. 栈类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 2.链表类模板 10.4 本章小结 C++语言程序设计教程 第10章 类模板 10.3.3 顺序容器 表10-4 deque容器中较为重要的成员函数 利用[]运算符取出容器中的元素 operator[] 与容器x(deque容器)互换元素 swap(x) 返回第n个元素的引用 at(n) 返回当前容器可以存储的最大元素个数 capacity 若容器为空(无元素)则返回true,否则返回false empty 返回当前容器中的元素个数 size 返回容器可存储元素的最大个数 max_size 返回容器末端的倒转迭代器 rend 返回容器前端的倒转迭代器 rbegin 返回容器末端的迭代器 end 返回容器前端的迭代器 begin 返回容器末端元素的引用 back 返回容器前端元素的引用 front 清除容器内的元素 clear 删除容器中间的元素 erase 在容器中间插入元素 insert 在容器后端删除元素 pop_back 在容器后端增加元素 push_back 在容器前端删除元素 pop_front 在容器前端增加元素 push_front 功 能 说 明 函 数 名 C++语言程序设计教程 第10章 类模板 10.3.3 顺序容器 为了更好的使用3种标准顺序容器,STL还设计了3种容器适配器(container adapter):队列(queue)、优先队列(priority queue)和栈(stack)。容器适配器可以将顺序容器转换为另一种容器,也就是以顺序容器为基础,将其转换为新的容器。转换后的新容器将具有新的特殊操作要求。 表10-4 容器适配器 stack 需要一个FILO结构时使用栈。 在一端插入元素,在同一端删除元素,具有先进后出(first in, last out, FILO)的特性。 stack (栈) queue 需要一个带优先级的FIFO结构时使用优先队列。 每个元素都有一个优先级,元素按优先级的顺序从队列中删除,如果优先级相同,则仍然遵循先进先出规则。插入和删除都比一般的简单队列慢,因为必须对元素重新调整顺序,以支持按优先级排序。 priority queue (优先队列) queue 需要一个FIFO结构时使用队列。 在一端插入元素,在另一端取出元素,具有先进先出(first in, first out, FIFO)的特性,插入和删除都较快。 queue (队列) 头文件 何时使用 特性 容器类名 C++语言程序设计教程 第10章 类模板 10.3.3 顺序容器 /************************************* * 程序名:p10_4.cpp * * 功 能:队列容器示例程序 * *************************************/ #includeiostream #includequeue using namespace std; templateclass T void print(queueT q) { if(q.empty()) //判断队列是否空 coutQueue is empty!endl; else { int j=q.size(); for(int i=0; ij;i++) { coutq.front() ; q.pop(); //出队列 } coutendl; } } 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 C++语言程序设计教程 第10章 类模板 int main() { queueint q; //创建队列 q.push(1); //进队列 q.push(2); q.push(3); q.push(4); //取队头元素 coutThe first element is :
您可能关注的文档
- C#及.NET3.5高级程序设计1--基础知识.doc
- C#技术:C#基本概念.doc
- C#教程——03第3章 对象与类型.pdf
- C#图解教程第3篇.ppt
- 存储器分段和物理地址形成.ppt
- 存储约束条件下序列联配算法.pdf
- C#文件的上传及下载.doc
- C#中对象创建方式.doc
- 存款和汇票业务专项培训.pptx
- C#中对象克隆.docx
- 2.3 二次函数与一元二次方程、不等式7题型分类(讲+练)(学生版) 2024-2025学年《解题秘籍》高一数学同步知识·题型精讲精练讲义(人教A版2019必修第一册).pdf
- 1.1集合的概念7题型分类(讲+练)(学生版) 2024-2025学年《解题秘籍》高一数学同步知识(人教A版必修第一册).pdf
- 实验10 探究影响电流通过导体产生热量的因素(学生版) 九年级物理全一册教材实验大盘点.pdf
- 实验07 探究电流与电阻大小关系(教师版) 九年级物理全一册教材实验大盘点.pdf
- 2.1 我们周围的空气(作业)(教师版) 2024-2025学年九年级化学上册同步优质课件与作业(人教版2024).pdf
- 第二章 神经调节 (学生版) 2024-2025学年高二生物单元速记巧练(人教版2019选择性必修1).pdf
- 4.1指数5题型分类(讲+练)(教师版) 2024-2025学年《解题秘籍》高一数学同步知识·题型精讲精练讲义(人教A版2019必修第一册).pdf
- 4.3对数7题型分类(讲+练)(学生版) 2024-2025学年《解题秘籍》高一数学同步知识·题型精讲精练讲义(人教A版2019必修第一册).pdf
- 3.4函数的应用(一)5题型分类(讲+练)(教师版) 2024-2025学年《解题秘籍》高一数学同步知识·题型精讲精练讲义(人教A版2019必修第一册).pdf
- 暑假作业03 How long 和How far(教师版) 2024年七年级英语暑假培优练(人教版).pdf
最近下载
- 警营文化建设投标方案(技术方案).docx
- 人教PEP版六年级上册英语Unit 4单元试卷(含听力音频).doc VIP
- 人教PEP版六年级上册英语Unit 3单元试卷(含听力音频).doc VIP
- 春节主题班会PPT课件.pptx
- 第三章 代数式 综合测试卷(原卷版).pdf VIP
- 门诊分诊课件.pptx
- 第三章 图形的平移与旋转 单元测试(基础过关)(备作业)-【上好课】2021-2022学年八年级数学下册同步备课系列(北师大版)(解析版).pdf VIP
- IEC61000-4-2 Ed.2试验标准.PDF
- 第三章 图形的平移与旋转 单元测试(能力提升)(备作业)-【上好课】2021-2022学年八年级数学下册同步备课系列(北师大版)(解析版).pdf VIP
- 第三章 图形的平移与旋转 章末检测卷(学生版).pdf VIP
文档评论(0)