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

网站建设之婚礼摄影网站设计做外链哪个网站好

网站建设之婚礼摄影网站设计,做外链哪个网站好,网络工程就业岗位有哪些,昆明凡科建站多少钱前言#xff1a; 上一章我们介绍了适配器#xff0c;也提了一下迭代器适配器#xff0c;今天我们就从反向迭代器把迭代器适配器给解释一下。 既然 都叫迭代器容器了 就说名只要接口合适他可以封装实现各种容器需求包括vector list 。 目录 1.反向迭代器设计 1.1反向迭代…前言 上一章我们介绍了适配器也提了一下迭代器适配器今天我们就从反向迭代器把迭代器适配器给解释一下。 既然 都叫迭代器容器了 就说名只要接口合适他可以封装实现各种容器需求包括vector list 。 目录 1.反向迭代器设计 1.1反向迭代器思想  1.2多参数模板 2.vecor反向迭代器 3.list反向迭代器 1.反向迭代器设计 反向迭代器 reverse_iterator 可以用来反向遍历容器在某些场景下很实用 1.1反向迭代器思想  因为数组比较简单我们就从数组引出反向的思想。  注库中的反向迭代器在设计时为了最求极致的对称rbegin() 指向最后一个有效元素的下一个位置rend() 指向第一个有效元素位置是与正向迭代器相反的 通过图示知道反向迭代器的就是正向迭代器的--。反向迭代器的--就是正向迭代器的因此反向迭代器的实现可以借助正向迭代器即反向迭代器内部可以包含一个正向迭代器对正向迭代器的接口进行包装即可。 1.2多参数模板 在模拟实现list迭代器时候我们在const对象对普通对象代码的复用的 过程中引入了多参数模板不同参数实现不同功能反向迭代器的实现同样适用。有两点需要注意 重载operator*返回的是目标对象的引用又因为库里追求极致对称所以我们应该先执行--操作后返回对象的引用。具体返回的对象是否需要const修饰取决于我们使用的模板参数。 #pragma once namespace cmx {template class iterator, class Ref, class Ptrstruct Reverselterator{typedef Reverselteratoriterator, Ref, Ptr self;iterator _it;Reverselterator(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) const{return _it ! s._it;}};} 完成头文件的编写之后我们就可以把他运用于所有可以用迭代器访问的容器 比如 vector list只需要修改模版参数中正向迭代器的代码就可以适配出属于自己的反向迭代器。 2.vecor反向迭代器 只需要引用 反向迭代器的头文件 ReverseIterator.h 就可以使用具体代码如下 #includeassert.h #includeReverseIterator.hnamespace cmx {templateclass Tclass vector{public:typedef T* iterator;typedef const T* const_iterator;typedef Reverselteratoriterator, T, T* reverse_iterator;typedef Reverselteratorconst_iterator, const T, const T* const_reverse_iterator;reverse_iterator rebegin(){//this调用的end()函数return reverse_iterator(end());}reverse_iterator rend(){return reverse_iterator(begin());} 3.list反向迭代器 代码如下 templateclass Tclass list{typedef list_nodeT Node;public:typedef __list_iteratorT, T, T* iterator;typedef __list_iteratorT, const T, const T* const_iterator;typedef Reverselteratoriterator, T, T* reverse_iterator;typedef Reverselteratorconst_iterator, const T, const T* const_reverse_iterator;
http://www.zqtcl.cn/news/901686/

相关文章:

  • “网站建设:上海珍岛”网站备案信息查询系统
  • 北京哪个公司做网站专业建站培训
  • 郑州知名网站推广网站管理设置
  • 建设工程网站资质人员查询常州模板网站建设价格
  • 自己建网站做app手机网站列表页源码
  • 企业网站模板seo网站建设关键词优化
  • 平面毕业设计作品网站推广普通话ppt
  • p2p网站开发思路方案免费建简单网站
  • 微信朋友圈的网站连接怎么做互联网工程有限公司
  • 高大上企业网站优秀的门户网站
  • 做seo对网站推广有什么作用自己做电商网站吗
  • 网站从哪些方面来做泉州网页搜索排名提升
  • 网站建设可以给公司带来想做网站开发兼职
  • 天津市免费建站精美大气的餐饮类企业网站
  • 购物网站那个信用好又便宜手机模板的网站
  • 建筑企业资质查询网站怎么查网络服务商
  • 汉川市城乡建设局网站企业销售网站建设
  • 梅州建设网站域名购买流程
  • 单页网站与传统网站的区别wordpress对接微信
  • 做公司网站深圳旅游
  • 最好企业网站网站建设 的销售图片
  • 怎么创建网站 免费滴做网站算运营吗
  • 廊坊网站建设-商昊网络正规网站优化推广
  • 网站建设拍金手指排名贰贰安装wordpress数据库错误
  • 食品网站建设需求分析购物app大全
  • 电商美工广州seo技术外包公司
  • 重庆旅游seo整站优化深圳宝安区是富人区吗
  • 网站开发验收模板网站欧美风格
  • 自己做发卡网站什么是网络设计制作
  • 如何搭建一个公司网站互联网推广怎么找客户