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

C++笔记之标准库中用于处理迭代器的`std::advance`和`std::distance`

C++笔记之标准库中用于处理迭代器的std::advancestd::distance

在这里插入图片描述

code review!

文章目录

    • C++笔记之标准库中用于处理迭代器的`std::advance`和`std::distance`
    • 一.`std::advance`
      • 函数原型
      • 参数说明
      • 使用场景
      • 示例代码
        • 示例 1:移动 `std::vector` 的随机访问迭代器
        • 示例 2:移动 `std::list` 的双向迭代器
        • 示例 3:单向输入迭代器(如 `std::istream_iterator`)
      • 注意事项
      • 总结
    • 二.`std::distance`
      • 函数原型
      • 参数说明
      • 返回值
      • 使用场景
      • 示例代码
        • 示例 1:计算 `std::vector` 的迭代器距离
        • 示例 2:计算 `std::list` 的迭代器距离
        • 示例 3:计算部分范围的距离
      • 注意事项
      • 时间复杂度
      • 总结

一.std::advance

在 C++ 中,std::advance 是一个标准库函数,用于将迭代器向前或向后移动指定的距离。它是定义在头文件 <iterator> 中的一个实用工具函数。

函数原型

template <class InputIterator, 
http://www.dtcms.com/a/25086.html

相关文章:

  • Rust中的collections
  • DeepSeek在学术读写翻译中的独特优势
  • Spring容器扩展点
  • 无线网络数字孪生(Digital Twin for Wireless Networks)
  • Node.js中不支持require和import两种导入模块的混用
  • 进阶——第十六届蓝桥杯嵌入式熟练度练习(eeprom的读写)
  • 【Unity精品插件】NGUI:UI设计传奇工具
  • 动态规划 之 划分型DP
  • 【Java】泛型与集合篇(四)
  • 简易的仿桌面文件夹上传(vue2)
  • AI进展不止于基准:深度解析Grok 3的局限
  • 为AI聊天工具添加一个知识系统 之109 详细设计之50 三性三量三境
  • 数据分析--数据清洗
  • C++ 设计模式-外观模式
  • openharmony中HDF驱动框架关键流程说明-观察者模式
  • Redis7——基础篇(四)
  • 安卓鸿蒙应用开发架构变迁
  • HTML之JavaScript Form表单事件
  • [生活杂项][运动教程]自由泳
  • 【拥抱AI】GPT Researcher的诞生
  • qemu-kvm源码解析-cpu虚拟化
  • 基于SpringBoot+Vue的在线电影购票系统的设计与实现
  • Linux中进程的状态2
  • 【杂谈】加油!!!!
  • 根据研究主题自动生成研究报告,Open Deep Research远程服务器云部署
  • Medians
  • vscode通过ssh连接服务器实现免密登录+删除
  • 【DeepSeek三部曲】DeepSeek-R1论文详细解读
  • Python 基础-使用dict和set
  • Elon Musk的AI公司xAI重磅发布Grok 3,挑战OpenAI和Google