使用迭代器(iterator)遍历vector、map等

2023-11-12

所涉及方法

添加元素:array.push_back( );
正向迭代器:vector::iterator 迭代器变量名
反向迭代器:vector::reverse_iterator 迭代器变量名

:在不知道所包含数据个数的情况下用以遍历元素

vector<int> v;  //v是存放int类型变量的可变长数组,开始时没有元素

	for (int num= 0; num < 5; ++num)
		v.push_back(num);  //push_iback成员函数在vector容器尾部添加一个元素
		
	vector<int>::iterator i;  //定义正向迭代器
	for (i = v.begin(); i != v.end(); ++i) {  //用迭代器遍历容器
		cout << *i << " ";  //*i 就是迭代器i指向的元素		
	}
	cout << endl;
	//用反向迭代器遍历容器
	for (vector<int>::reverse_iterator j = v.rbegin(); j != v.rend(); ++j)
		cout << *j << " ";

执行结果
在这里插入图片描述
map同上,如下代码所示

				  unordered_map<int
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用迭代器(iterator)遍历vector、map等 的相关文章

  • 使用 gcc 在 Linux 上运行线程构建块 (Intel TBB)

    我正在尝试为线程构建块构建一些测试 不幸的是 我无法配置 tbb 库 链接器找不到库 tbb 我尝试在 bin 目录中运行脚本 但这没有帮助 我什至尝试将库文件移动到 usr local lib 但这又失败了 任何的意见都将会有帮助 确定您
  • 删除文件的最后 10 个字符

    我想删除文件的最后 10 个字符 说一个字符串 hello i am a c learner 是文件内的数据 我只是希望该文件是 hello i am a 文件的最后 10 个字符 即字符串 c learner 应在文件内消除 解决方案 将
  • 结构化绑定中缺少类型信息

    我刚刚了解了 C 中的结构化绑定 但有一件事我不喜欢 auto x y some func is that auto正在隐藏类型x and y 我得抬头看看some func的声明来了解类型x and y 或者 我可以写 T1 x T2 y
  • BASIC 中的 C 语言中的 PeekInt、PokeInt、Peek、Poke 等效项

    我想知道该命令的等效项是什么Peek and Poke 基本和其他变体 用 C 语言 类似PeekInt PokeInt 整数 涉及内存条的东西 我知道在 C 语言中有很多方法可以做到这一点 我正在尝试将基本程序移植到 C 语言 这只是使用
  • C# 异步等待澄清?

    我读了here http blog stephencleary com 2012 02 async and await html that 等待检查等待的看看它是否有already完全的 如果 可等待已经完成 那么该方法将继续 运行 同步
  • 如何在 C# 中打开 Internet Explorer 属性窗口

    我正在开发一个 Windows 应用程序 我必须向用户提供一种通过打开 IE 设置窗口来更改代理设置的方法 Google Chrome 使用相同的方法 当您尝试更改 Chrome 中的代理设置时 它将打开 Internet Explorer
  • free 和 malloc 在 C 中如何工作?

    我试图弄清楚如果我尝试 从中间 释放指针会发生什么 例如 看下面的代码 char ptr char malloc 10 sizeof char for char i 0 i lt 10 i ptr i i 10 ptr ptr ptr pt
  • -webkit-box-shadow 与 QtWebKit 模糊?

    当时有什么方法可以实现 webkit box shadow 的工作模糊吗 看完这篇评论错误报告 https bugs webkit org show bug cgi id 23291 我认识到这仍然是一个问题 尽管错误报告被标记为RESOL
  • 如何连接重叠的圆圈?

    我想在视觉上连接两个重叠的圆圈 以便 becomes 我已经有部分圆的方法 但现在我需要知道每个圆的重叠角度有多大 但我不知道该怎么做 有人有主意吗 Phi ArcTan Sqrt 4 R 2 d 2 d HTH Edit 对于两个不同的半
  • 无限循环与无限递归。两者都是未定义的吗?

    无副作用的无限循环是未定义的行为 看here https coliru stacked crooked com view id 24e0a58778f67cd4举个例子参考参数 https en cppreference com w cpp
  • x:将 ViewModel 方法绑定到 DataTemplate 内的事件

    我基本上问同样的问题这个人 https stackoverflow com questions 10752448 binding to viewmodels property from a template 但在较新的背景下x Bind V
  • 两个类可以使用 C++ 互相查看吗?

    所以我有一个 A 类 我想在其中调用一些 B 类函数 所以我包括 b h 但是 在 B 类中 我想调用 A 类函数 如果我包含 a h 它最终会陷入无限循环 对吗 我能做什么呢 仅将成员函数声明放在头文件 h 中 并将成员函数定义放在实现文
  • C 编程:带有数组的函数

    我正在尝试编写一个函数 该函数查找行为 4 列为 4 的二维数组中的最大值 其中二维数组填充有用户输入 我知道我的主要错误是函数中的数组 但我不确定它是什么 如果有人能够找到我出错的地方而不是编写新代码 我将不胜感激 除非我刚去南方 我的尝
  • LINQ:使用 INNER JOIN、Group 和 SUM

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • 为什么使用小于 32 位的整数?

    我总是喜欢使用最小尺寸的变量 这样效果就很好 但是如果我使用短字节整数而不是整数 并且内存是 32 位字可寻址 这真的会给我带来好处吗 编译器是否会做一些事情来增强内存使用 对于局部变量 它可能没有多大意义 但是在具有数千甚至数百万项的结构
  • 为什么 isnormal() 说一个值是正常的,而实际上不是?

    include
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • C# 中最小化字符串长度

    我想减少字符串的长度 喜欢 这串 string foo Lorem ipsum dolor sit amet consectetur adipiscing elit Aenean in vehicula nulla Phasellus li
  • 指针和内存范围

    我已经用 C 语言编程有一段时间了 但对 C 语言还是很陌生 有时我对 C 处理内存的方式感到困惑 考虑以下有效的 C 代码片段 const char string void where is this pointer variable l
  • 现代编译器是否优化乘以 1 和 -1

    如果我写 template

随机推荐

  • 各种分布函数:泊松分布、二项分布、伯努利分布、高斯分布、帕累托分布

    简单的说 伯努利是扔一次硬币 二值实验 二项分布是多次伯努利 即扔多次硬币 多次二值实验 泊松分布是 p p p 很小的二项 即扔好多好多次硬币 且扔出正面概率极小 正态分布是 n n n 很大的二项
  • window10安装CUDA7.0-8.0-9.0

    因为需求 没办法 window10 x64 家庭版 无所谓 VS 2013 专业版 x64 现在安装CUDA 顺序 CUDA 9 0 176 CUDA 8 0 61 CUDA 7 0 27 CUDA9 0是完整安装 8 0和7 0 不要安装
  • Centos7配置服务开机启动

    Background 这里记录方便自己以后查阅 配置开机启动的方法有三种 1 配置 etc rc local或 etc rc d rc local 2 配置 etc rc d init d 3 配置 usr lib systemd syst
  • Android数据的四种存储方式SharedPreferences、SQLite、ContenProvider

    作为一个完整的应用程序 数据存储操作是必不可少的 因此 Android系统一共提供了四种数据存储方式 分别是 SharePreference SQLite Content Provider File 由于Android系统中 数据基本都是私
  • Map&Set哈希桶(基础+常用方法总结)

    作者 渴望力量的土狗 博客主页 渴望力量的土狗的博客主页 专栏 数据结构与算法 工欲善其事必先利其器 给大家介绍一款超牛的斩获大厂offer利器 牛客网 点击免费注册和我一起刷题吧 目录 1 map set简介 1 1 概念及场景 1 2
  • centos7-elk之elasticsearch

    准备环境 centos7 4 jdk 1 8 安装jdk可见链接 https blog csdn net xuejinyan123 article details 102685458 下载 elasticsearch 版本 6 0 1 存放
  • mysql安装包及驱动下载

    1 下载MySQL安装包 mysql官网下载安装包地址 https downloads mysql com archives community 在页面选择希望下载的版本 运行环境 运行环境版本 下方会出现各种版本 MySQL数据库安装有y
  • 用于 3d 渲染应用程序的常见物体 IOR(折射率)值

    以下内容来源于 https www btbat com 12032 html 用于 3d 渲染应用程序的 IOR 折射率 值 那么支持的常用 3D 程序如下 如 NewTek Lightwave 3d Blender 3d Autodesk
  • 轻松实现crontab的使用

    一 什么情况下使用crontab crontab命令常见于Unix和类Unix的操作系统之中 用于设置周期性被执行的指令 二 如何编写crontab 1 安装crontab环境 bash内键入 crontab 如果提示command not
  • 人类学习 vs. 机器学习

    摘要 机器学习与人类学习的范式有一定的联系 本文发掘这些联系 作用是指导人类的学习 1 什么是学习 对于人类而言 学习是改造大脑皮层的过程 我们会发现 不同人学习不同东西的能力也不一样 如有些人数学厉害 有些人音乐厉害 同时 也有些牛人 学
  • 混沌神经网络的实际应用,进化算法优化神经网络

    人工神经网络的发展趋势 人工神经网络特有的非线性适应性信息处理能力 克服了传统人工智能方法对于直觉 如模式 语音识别 非结构化信息处理方面的缺陷 使之在神经专家系统 模式识别 智能控制 组合优化 预测等领域得到成功应用 人工神经网络与其它传
  • QFileDialog.getOpenFileName获取打开的文件路径

    前段时间要做一个打开文件并上传的功能 在不多加一个窗口的情况下选中那个打开的文件 def addButtonClicked self index try file name QFileDialog getOpenFileName self
  • Ubuntu20.04下编译测试RocksDB以及遇到的问题记录

    rockdb编译 git clone https github com facebook rocksdb git 如果上面的命令报错无法连接 则换成下面这句 git clone git github com facebook rocksdb
  • 大数据简历要点与模拟面试和项目介绍模板二

    15 模拟面试和项目介绍模板10 一 自我介绍 目前不知道怎么做 您好 我叫xxx 毕业于xxx学校 因为在大学里学过javase mysql web 数据结构与算法等计算机基础知识 在一份软件测试的实习中接触到数据仓库 用户画像 推荐系统
  • Mybatis如何实现多表查询

    一 按照配置文件的方式 在Java端mybatis框架里写联查sql语句 通过orm模型解析 这里需要考虑一对一以及一对多的关系 按student和score表举例 student对于score是一对多的关系 score对于student来
  • 访谈录:中国的软件业需要悟道

    1 记者 目前 随着中国IT业的发展 国外IT企业对中国IT业也越来越重视 能否简单介绍一下目前中国外包情况 陆其明 近几年 中国IT业的发展确实比较快 特别是软件行业 你可以看到 全国各地都在建软件园 各级政府对软件企业也都有政策倾斜 软
  • Three.js - 从 PLY 模型中创建粒子系统

    PLY全称 Polygon or Stanford Triangle Format 多边形或三角形格式 可以有效地保存和加载简单 静态的3D内容 支持二进制和ascii格式 可以存储顶点位置 颜色 法线和uv坐标 不能保存纹理 示例 htt
  • 登录模块丨前端uniapp微信小程序项目

    小兔鲜儿 微信登录 涉及知识点 微信授权登录 文件上传 Store 状态管理等 微信登录 微信小程序的开放能力 允许开发者获取微信用户的基本信息 昵称 性别 手机号码等 开发者常用来实现注册 登录的功能 登录方式 常见登录 注册方式 用户名
  • 9.java程序员必知必会类库之加密库

    前言 密码学在计算机领域源远流长 应用广泛 当前每时每刻 每一个连接到互联网的终端 手机 电脑 iPad都会和互联网有无数次的数据交互 如果这些数据都是明文传输那将是难以想象的 为了保护用户隐私 防止重要数据被窃取 篡改 我们需要对我们的数
  • 使用迭代器(iterator)遍历vector、map等

    所涉及方法 添加元素 array push back 正向迭代器 vector iterator 迭代器变量名 反向迭代器 vector reverse iterator 迭代器变量名 在不知道所包含数据个数的情况下用以遍历元素 vecto