C++中advance的代码实现
2016-10-12 10:58
141 查看
template<typename IterT, typename DistT> void advance(IterT& iter, DistT d) { if(typeid(typenamestd::iterator_traits<IterT>::iterator_category) ==typeid(std::random_access_iterator_tag)) { iter += d; // use iterator arithmetic } // for random access iters else { if (d >= 0) { while (d--) ++iter; } // use iterative calls to else { while (d++) --iter; } // ++ or -- for other } // iterator categories }
相关文章推荐
- 归并排序-c++代码实现及运行实例结果
- C语言模式实现C++继承和多态的实例代码
- 多边形顺时针方向判断公式及C++代码实现二
- 选择排序-c++代码实现及运行实例结果
- 大规模数据处理Bloom Filter C++代码实现
- 快速傅里叶变换(FFT)算法C++实现代码
- USB HID设备读写代码实现c++
- 冒泡排序-c++代码实现及运行实例结果
- C++实现委托机制之完整代码实现(一)
- 打靶问题c++代码递归实现——程序员面试宝典
- Fast Compressive Tracking(快速压缩跟踪)算法的C++代码实现
- C++中图片重命名实现代码
- 矩阵相乘-c++代码实现及运行实例结果
- 《大话设计模式》读书笔记(C++代码实现) 第二章:策略模式
- DES算法C++代码实现-密码学
- 复数四则运算-c++代码实现及运行实例结果
- 单例模式(C++代码实现)
- 复数乘法运算(三次实数乘法)-c++代码实现及运行实例结果
- 雇佣问题(hireassistant)-c++代码实现及运行实例结果
- c++递归实现n皇后问题代码(八皇后问题)