当前位置: 首页 > news >正文

网站建设建设哪家好合肥竞价推广

网站建设建设哪家好,合肥竞价推广,做网站设计用到的软件,创建网页链接目录 一、反向迭代器 二、反向迭代器的实现 一、反向迭代器 之前的模拟实现vector、list 的时候#xff0c;这些都是实现了正向迭代器#xff0c;反向迭代器都没有实现#xff0c;这里就要实现反向迭代器 反向迭代器也是适配器#xff08;配接器#xff09;的一种#…目录 一、反向迭代器 二、反向迭代器的实现 一、反向迭代器 之前的模拟实现vector、list 的时候这些都是实现了正向迭代器反向迭代器都没有实现这里就要实现反向迭代器 反向迭代器也是适配器配接器的一种反向迭代器的实现是对正向迭代器的封装即实现的反向迭代器能支持多种容器给出该容器的正向迭代器就能支持反向迭代器 比如 vector 需要反向迭代器那就把 vector 的正向迭代器传给 反向迭代器它就可以通过正向迭代器转换出 vector 的反向迭代器。 也就是说实现的反向迭代器并包装的这个类不是针对某个容器而是针对所有容器的任何一个容器只要你实现了正向迭代器就可以通过其适配出反向迭代器 要注意反向迭代器的错位访问 对于 list 而言正向迭代器的 begin 和 end 位置如下 begin 位于头结点的下一个节点end 则位于尾结点的下一个节点即头节点正向迭代器 操作迭代器是往后走的 反向迭代器 rbegin 和 rend 位置如下 反向迭代器 rbegin() 位于正向迭代器 end() 的位置 反向迭代器 rend() 位于正向迭代器 begin() 的位置反向迭代器 操作迭代器是往前走的 vector 反向迭代器也是如此 对于 list 来说反向迭代器解引用取数据取的是头节点上一个节点位置的数据vector 也是如此 二、反向迭代器的实现 Iterator.h #pragma oncetemplateclass Iterator, class Ref, class Ptr class ReverseIterator {typedef ReverseIteratorIterator, Ref, Ptr Self; public:ReverseIterator(Iterator it):_it(it){}Ref operator*(){Iterator tmp _it;return *(--tmp); //取的是上一个的数据}Ptr operator-(){return (operator*());//取的是上一个的数据的地址}Self operator(){--_it;return *this;}Self operator--(){_it;return *this;}bool operator!(const Self s){return _it ! s._it;}private:Iterator _it; };下面套到 list 里面进行测试 //反向迭代器 typedef ReverseIteratoriterator, T, T* reverse_iterator; typedef ReverseIteratorconst_iterator, const T, const T* const_reverse_iterator; 在 list 里面添加反向迭代器代码 reverse_iterator rbegin() {return reverse_iterator(end()); }reverse_iterator rend() {return reverse_iterator(begin()); } 测试代码 void Test_ReverseIterator() {fy::listint lt;lt.push_back(1);lt.push_back(2);lt.push_back(3);lt.push_back(4);lt.push_back(5);lt.push_back(6);fy::listint::iterator it lt.begin();while (it ! lt.end()){cout *it ;it;}cout endl;fy::listint::reverse_iterator rit lt.rbegin();while (rit ! lt.rend()){cout *rit ;rit;}cout endl; } 运行结果 list 的反向迭代器就完成了下面测试 vector 的反向迭代器 把 Iterotor.h 拷贝一份到 vector 里面 //反向迭代器 typedef ReverseIteratoriterator, T, T* reverse_iterator; typedef ReverseIteratorconst_iterator, const T, const T* const_reverse_iterator; 在 vector 里面添加反向迭代器代码 reverse_iterator rbegin() {return reverse_iterator(end()); }reverse_iterator rend() {return reverse_iterator(begin()); } 测试代码 void Test_ReverseIterator() {fy::vectorint v;v.push_back(1);v.push_back(2);v.push_back(3);v.push_back(4);v.push_back(5);v.push_back(6);fy::vectorint::iterator it v.begin();while (it ! v.end()){cout *it ;it;}cout endl;//反向迭代器fy::vectorint::reverse_iterator rit v.rbegin();while (rit ! v.rend()){cout *rit ;rit;}cout endl;} 运行结果 ----------------我是分割线--------------- 文章到这里就结束了下一篇即将更新
http://www.ho-use.cn/article/10816434.html

相关文章:

  • 百色网站建设温州网站推广哪家好
  • 网站和管理系统哪个更难做建立企业的网站有哪几种方案
  • 宁波seo网站服务wordpress友链模板
  • 漳州北京网站建设品牌家具排行榜前十名
  • 如何自己免费制作网站网站开发常用js函数
  • 网站搭建哪里找方便广州网站开发公司
  • 团队合作网站仓储网站建设
  • 网站建设 英语翻译湖南seo优化服务
  • 网站搬家内页打不开口碑好的专业网站建设
  • 淄博网站建设 招聘高端创意网站建设
  • 可视化建网站素材网站怎么推广
  • 订餐网站怎么做短视频平台
  • 临海城市建设网站免费外链网盘
  • 网站建设合同任wordpress标签工具
  • 网站建设的项目总结什么是企业网站建设
  • 如何上传网站到云主机服装定制网站模板
  • 联合实验室 网站建设方案阿里云域名续费
  • 自己能否建立公司网站dw个人主页制作代码
  • 企业网站的制作哪家好企业案例网站
  • 企梦云网站建设php商城网站开发实例视频教程
  • 建设一个用教育网站网站建立的步骤
  • 乐清网站网络公司个人做分类信息网站
  • 北京做手机网站建设高端品牌网站建设定位
  • 什么是权重高的网站linux类似wordpress
  • 商业网站建设所用软件做正规网站
  • 婚纱网站模板素材花生壳怎么建设购物网站
  • 刘素云网站脱孝怎样做广州网站建设制作的公司
  • dw做的网站如何使用wordpress画廊怎么用
  • 婚庆类网站模板做的比较好的猎头网站
  • 无锡做公司网站的做公司网站 烟台