STL容器整理(office2010版).docVIP

  1. 1、本文档共9页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 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) 在尾部加入一个数据

文档评论(0)

jgx3536 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

版权声明书
用户编号:6111134150000003

1亿VIP精品文档

相关文档