C容器和迭代器

上传人:hs****ma 文档编号:592089372 上传时间:2024-09-19 格式:PPT 页数:10 大小:101KB
返回 下载 相关 举报
C容器和迭代器_第1页
第1页 / 共10页
C容器和迭代器_第2页
第2页 / 共10页
C容器和迭代器_第3页
第3页 / 共10页
C容器和迭代器_第4页
第4页 / 共10页
C容器和迭代器_第5页
第5页 / 共10页
点击查看更多>>
资源描述

《C容器和迭代器》由会员分享,可在线阅读,更多相关《C容器和迭代器(10页珍藏版)》请在金锄头文库上搜索。

1、Outlineu标准库vector类型u迭代器简介1vectorvector是同一种类型的对象的集合,每个对象都有一个对应的整数索引值。我们把vector称为容器,是因为它可以包含其它对象。一个容器中的所有对象必须是同一种类型的。使用vector之前,必须包含相应的头文件:#include 2vectorvector是一个类模板(class template)。声明从类模板产生的某种类型的对象,需要提供附加信息。以vector为例,声明vector时必须说明vector保存何种对象的类型:vector ivec;vector Sales_vec;3vector对象的操作v.empty()如果v

2、为空,返回true,否则返回falsev.size() 返回v中元素的个数v.push_back(t)在v的末尾增加一个值为t的元素vn返回v中位置为n的元素v1 = v2把v1的元素替换为v2元素的副本v1 = v2如果v1与v2相等,返回true4vector的下标操作vector的元素位置从0开始。可以使用下标运算符来获取元素。下标运算符仅能获取已存在的元素,试图对不存在的元素进行操作时产生运行时错误。vector ivec; /empty vectorfor (vector:size_type ix=0; ix!=10; ix+) ivecix = ix;/disaster: ivec

3、 has no elements.5迭代器(iterator)每种容器都定义了自己的迭代器类型,如vector:vector:iterator iter;这条语句定义了一个名为iter的变量,其类型是由vector定义的iterator类型。6begin和end操作每种容器都定义了一对命名为begin和end的函数,用于返回迭代器。如果容器不为空,begin返回的迭代器指向第一个元素。如:vector:iterator iter = ivec.begin();end返回的迭代器指向vector的末端元素的下一个位置(一个不存在的元素)。如果容器为空,begin返回的迭代器与end相同。7解引用操作迭代器类型可以使用 解引用操作符 (*操作符)来访问迭代器指向的元素。假设iter指向vector对象ivec的第一个元素,则以下两个语句的含义相同。ivec0 = 0;*iter = 0;end返回的迭代器不指向任何元素,因此不能对其进行解引用操作。8自增和比较可以使用自增运算符(+)向前移动,指向下一个元素。用=和!=来比较两个迭代器,如果它们指向同一个元素,则它们相等,否则就不相等。9用迭代器编写循环for (vector:iterator iter = ivec.begin(); iter!=ivec.end(); iter+) *iter = 0;10

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 办公文档 > 工作计划

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号