- 1、本文档共9页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
STL容器整理(office2010版)
第一类容器(支持迭代器)
序列容器
Vector(随机迭代访问)
说明:
vector是一种动态数组,是基本数组的类模板。其内部定义了很多基本操作。
#include vector 注意:头文件没有“.h”
构造:
vectorint v1; // 默认构造函数
vectorint v2(init_size,0); //如果预先定义了:int init_size;他的成员值都被初始化为0;
vectorint v3(v2); // 复制构造函数,构造一个新的向量,作为已存在的向量的完全复制;
vectorint v4(first, last) // 带两个常量参数的构造函数,产生初始值为一个区间的向量。区间由一个半开区间 [first, last) 来指定。
方法:
assign(beg,end) 将(beg; end)区间中的数据赋值给对象。
assign(n,elem)将n个elem的拷贝赋值给对象。
at(idx)传回索引idx所指的数据,如果idx越界,抛出out_of_range。
back()传回最后一个数据,不检查这个数据是否存在。
begin()传回迭代器中的第一个数据地址。
capacity()返回容器中数据个数。
clear()移除容器中所有数据。
empty()判断容器是否为空。
end() // 指向迭代器中末端元素的下一个,指向一个不存在元素。
erase(pos) // 删除pos位置的数据,传回下一个数据的位置。
erase(beg,end)删除[beg,end)区间的数据,传回下一个数据的位置。
front()传回第一个数据。
get_allocator使用构造函数返回一个拷贝。
insert(pos,elem) // 在pos位置插入一个elem拷贝,传回新数据位置
insert(pos,n,elem) // 在pos位置插入n个elem数据,无返回值
insert(pos,beg,end) // 在pos位置插入在[beg,end)区间的数据。无返回值
max_size()返回容器中最大数据的数量。
pop_back()删除最后一个数据。
push_back(elem)在尾部加入一个数据。
rbegin()传回一个逆向队列的第一个数据。
rend()传回一个逆向队列的最后一个数据的下一个位置。
resize(num)重新指定队列的长度。
reserve()保留适当的容量。
size()返回容器中实际数据的个数。
c1.swap(c2) // 将c1和c2元素互换
Deque(随机迭代访问)
说明
#include deque
deque容器类与vector类似,支持随机访问和快速插入删除,它在容器中某一位置上的操作所花费的是线性时间。与vector不同的是,deque还支持从开始端插入数据:push_front()。
构造:
dequeElem c 创建一个空的deque
dequeElem c1(c2) 复制一个deque。
dequeElem c(n) 创建一个deque,含有n个数据,数据均已缺省构造产生。
dequeElem c(n, elem) 创建一个含有n个elem拷贝的deque
dequeElem c(beg,end) 创建一个以[beg;end)区间的deque
~dequeElem() 销毁所有数据,释放内存
方法:
assign(beg, end) 将[beg; end)区间中的数据赋值给对象。
assign(n, elem) 将n个elem的拷贝赋值给对象。
at(index) 传回索引index所指的数据,如果index越界,抛出out_of_range。
back() 传回最后一个数据,不检查这个数据是否存在。
begin() 传回迭代器重的可一个数据。
clear() 移除容器中所有数据。
empty() 判断容器是否为空。
end() 指向迭代器中的最后一个数据地址。
erase(pos) 删除pos位置的数据,传回下一个数据的位置。
erase(beg,end) 删除[beg,end)区间的数据,传回下一个数据的位置。
front() 传回第一个数据。
get_allocator 使用构造函数返回一个拷贝。
insert(pos,elem) 在pos位置插入一个elem拷贝,传回新数据位置
insert(pos,n,elem) 在pos位置插入n个elem数据。无返回值
insert(pos,beg,end) 在pos位置插入在[beg,end)区间的数据。无返回值
max_size() 返回容器中最大数据的数量。
pop_back() 删除最后一个数据。
pop_front() 删除头部数据。
push_back(elem) 在尾部加入一个数据
您可能关注的文档
- 2009第三章 离子聚合反应.ppt
- 2010届高三三模溧水阅卷点地理反馈.doc
- 2010年银行从业个人贷款习题查漏补缺01.doc
- 《雪顿节上看赛牛》ppt课件.ppt
- 2010年高考作文18练系列教案(1—6).doc
- 2010高考考试说明英语词汇(音标解释)(更新).doc
- 2011--2012学年度第一学期初一语文教研工作计划.doc
- 2010.3.12--《新法制报》一键创业 共享财富--精彩生活便利概念店“零门槛”、“零风险”掀起全民创业热潮.doc
- 2011上海作文解析.doc
- 20110925--九初2012级初三上期第1学月月考数学试题.doc
- 计算机行业深度报告:落实“人工智能+”,赋能千行百业.docx
- 电气设备-人形机器人深度研究系列九:人形机器人轻量化:产业化前夕的进修课,应用为重.docx
- 墨西哥劳动法和雇佣条例解读.docx
- 端侧AI行业深度:驱动因素、商业模式、产业链及相关公司深度梳理.pdf
- 钦州市卫生学校招聘专任教师考试真题2024 .pdf
- 2025年湖北省中考英语真题(解析版) .docx
- 旋耕刀表面涂层改性对其功耗影响的实验研究及优化设计 .pdf
- 实用作文素材积累04(《人民日报》闪光金句+精彩作文构思)-备战2026年高考语文作文实用素材积累与运用(全国通用) .pdf
- DevOps在监控软件项目质量管理中的应用研究 .pdf
- 初探“翻转课堂”在传统课程中的教学效率应用研究.docx
文档评论(0)