C++ 范围 for 循环与常规 for 循环不同[关闭]

2024-04-03

与常规 for 循环相比,范围 for 循环提供不同的地址。 如何使用增强的 for 循环?

iArr地址:011bf7cc

循环地址范围:011bf79c 011bf79c 011bf79c

常规 for 循环地址:011bf7cc 011bf79c 011bf7d4

#include <iostream>
#include "TestingConstructors.h"
#include <Windows.h>

using namespace std;


int main() {
     int i, j, *i1, *i2;
     i = 1;
     j = 3;
     i1 = &i;
     i2 = &j;
     *i1 = 2;
     int iArr[3] = { 1,2,3 };
     cout << &iArr << endl << endl;
     for (int i : iArr)
          cout << &i << " ";
     cout << endl << endl;
     for (int i = 0; i < ARRAYSIZE(iArr); i++)
          cout << &iArr[i] << " ";
     system("pause");
    return 0;
}

不存在这样的事情“增强的 for 循环”。这是一个 ”范围for循环":

for (int i : iArr)
      cout << &i << " ";

它给你一个不同的地址,因为int i : iArr is 创建每个元素的副本iArr并将其分配给i.

如果你想refer对于原始元素,您应该使用

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

C++ 范围 for 循环与常规 for 循环不同[关闭] 的相关文章

  • 如何从字符串中提取子字符串直到遇到第二个空格?

    我有一个像这样的字符串 o1 1232 5467 1232 5467 1232 5467 1232 5467 1232 5467 1232 5467 如何仅提取 o1 1232 5467 要提取的字符数并不总是相同 因此 我只想提取直到遇到
  • 与 for_each 或 std::transform 一起使用时,如何调用 C++ 函子构造函数

    我以前从未使用过 C 函子 所以我只是想了解它们是如何工作的 例如假设我们有这个函子类 class MultiplyBy private int factor public MultiplyBy int x factor x int ope
  • EntityHydrate 任务失败

    我最近安装了 Visual Studio 11 Beta 和 Visual Studio 2010 之后 我无法在 Visual Studio 2010 中构建依赖于 PostSharp 的项目 因此我卸载了 Visual Studio 1
  • 在 C 语言中,为什么数组的地址等于它的值?

    在下面的代码中 指针值和指针地址与预期不同 但数组值和地址则不然 怎么会这样 Output my array 0022FF00 my array 0022FF00 pointer to array 0022FF00 pointer to a
  • 防止控制台应用程序中的内存工作集最小化?

    我想防止控制台应用程序中的内存工作集最小化 在Windows应用程序中 我可以这样做覆盖 SC MINIMIZE 消息 http support microsoft com kb 293215 en us fr 1 但是 如何在控制台应用程
  • Makefile 和 .Mak 文件 + CodeBlocks 和 VStudio

    我对整个 makefile 概念有点陌生 所以我对此有一些疑问 我正在 Linux 中使用 CodeBlocks 创建一个项目 我使用一个名为 cbp2mak 的工具从 CodeBlocks 项目创建一个 make 文件 如果有人知道更好的
  • JavaScript 错误:MVC2 视图中的条件编译已关闭

    我试图在 MVC2 视图页面中单击时调用 JavaScript 函数 a href Select a JavaScript 函数 function SelectBenefit id code alert id alert code 这里 b
  • 来自嵌入图像的 BitmapSource

    我的目标是在 WPF 窗口上重写 OnRender 方法中绘制图像 someImage png 它是嵌入资源 protected override void OnRender System Windows Media DrawingCont
  • LinkLabel 无下划线 - Compact Framework

    我正在使用 Microsoft Compact Framework 开发 Windows CE 应用程序 我必须使用 LinkLabel 它必须是白色且没有下划线 因此 在设计器中 我将字体颜色修改为白色 并在字体对话框中取消选中 下划线
  • 在 azure blob 存储中就地创建 zip 文件

    我将文件存储在 Blob 存储帐户内的一个容器中 我需要在第二个容器中创建一个 zip 文件 其中包含第一个容器中的文件 我有一个使用辅助角色和 DotNetZip 工作的解决方案 但由于 zip 文件的大小最终可能达到 1GB 我担心在进
  • Unity c# 四元数:将 y 轴与 z 轴交换

    我需要旋转一个对象以相对于现实世界进行精确旋转 因此调用Input gyro attitude返回表示设备位置的四元数 另一方面 这迫使我根据这个四元数作为默认旋转来计算每个旋转 将某些对象设置为朝上的简单方法如下 Vector3 up I
  • 让网络摄像头在 OpenCV 中工作

    我正在尝试让我的网络摄像头在 Windows 7 64 位中的 OpenCV 版本 2 2 中捕获视频 但是 我遇到了一些困难 OpenCV 附带的示例二进制文件都无法检测到我的网络摄像头 最近我发现这篇文章表明答案在于重新编译一个文件 o
  • 如何从 Boost.PropertyTree 复制子树

    我有一些boost property tree ptree 我需要树来删除一些具有特定标签名称的元素 例如 xml 表示源ptree如下
  • SQLAPI++ 的免费替代品? [关闭]

    Closed 这个问题正在寻求书籍 工具 软件库等的推荐 不满足堆栈溢出指南 help closed questions 目前不接受答案 是否有任何免费 也许是开源 的替代品SQLAPI http www sqlapi com 这个库看起来
  • 读取依赖步行者输出

    I am having some problems using one of the Dlls in my application and I ran dependency walker on it i am not sure how to
  • 以编程方式创建 Blob 存储容器

    我有一个要求 即在创建公司时 在我的 storageaccount 中创建关联的 blob 存储容器 并将容器名称设置为传入的字符串变量 我已尝试以下操作 public void AddCompanyStorage string subDo
  • Unity3D - 将 UI 对象移动到屏幕中心,同时保持其父子关系

    我有一个 UI 图像 它的父级是 RectTransform 容器 该容器的父级是 UI 面板 而 UI 面板的父级是 Canvas 我希望能够将此 UI 图像移动到屏幕中心 即画布 同时保留父级层次结构 我的目标是将 UI 图像从中心动画
  • 如何高效计算连续数的数字积?

    我正在尝试计算数字序列中每个数字的数字乘积 例如 21 22 23 98 99 将会 2 4 6 72 81 为了降低复杂性 我只会考虑 连续的数字 http simple wikipedia org wiki Consecutive in
  • 如何从 Windows Phone 7 模拟器获取数据

    我有一个 WP7 的单元测试框架 它在手机上运行 结果相当难以阅读 因此我将它们写入 XDocument 我的问题是 如何才能将这个 XML 文件从手机上移到我的桌面上 以便我可以实际分析结果 到目前为止 我所做的是将 Debugger B
  • 声明一个负长度的数组

    当创建负长度数组时 C 中会发生什么 例如 int n 35 int testArray n for int i 0 i lt 10 i testArray i i 1 这段代码将编译 并且启用 Wall 时不会出现警告 并且似乎您可以分配

随机推荐

  • 如何获取系统设备语言,swift iOS

    如何使用 swift iOS 获取系统设备语言 而不是应用程序语言 我没有遇到任何问题 我想从以下位置获取设备语言设置 gt 常规 gt 语言该用户将语言设置为 我尝试了下面的代码 let appLang Locale preferredL
  • 如何处理异步。护照和猫鼬的 findOrCreate 方法

    身份验证模块 Passport 需要 FindOrCreate 方法才能进行登录 我使用 mongoose 来保存我的用户 其架构如下 var UserSchema new Schema firstname String lastname
  • AspectJ Maven 插件无法编译我的项目

    我尝试使用aspectj maven插件使用aspectj编译器来编译项目 然后尝试将类打包到 war 文件中 不幸的是 它不适用于以下配置 pom xml
  • 限制属性的字符串长度

    当我试图找出一个更大的问题时出现了这个问题 为了简单起见 我省略了这个问题 我必须用 C 表示某种数据结构 它是一种用于与外部系统通信的协议 因此 它具有一系列具有预定义长度和整数 或其他更复杂的数据 的字符串 我们假设 SYSTEM fo
  • Android WebRtc 本地视频流无法在棉花糖上显示,但可以在棒棒糖上显示

    添加的库 libjingle peerconnection jar Version 1 7 0 101 libjingle peerconnection so so 等级依赖性 fi vtt nubomedia utilities andr
  • 无法在VS2010/SQL Server 2012中使用SSIS SSDT

    我在本地计算机上安装了完整版本的 Sql Server 2012 并从安装包 和更新 安装了 SSDT 然后 我打开 SSDT Visual Studio 应用程序并安装 Microsoft 的 SSDT 包 该包似乎工作正常 但是 当我尝
  • 在我的包的子包中运行 python 脚本

    无法弄清楚正确 python 2 x 首选方式进行相对导入 以便我可以将测试脚本放在一个子包中 并使这些测试脚本能够测试我的库 farm testpad testpad py Traceback most recent call last
  • 在闪亮的应用程序中在后台运行任务

    我有一个闪亮的应用程序 它通过以下方式获取输入selectizeInput并将数据输入到固定大小的数据框中 该数据框会在用户输入数据时显示和更新 当用户输入数据时 数据框被填充 每次用户输入新数据时 我都会使用谷歌表格 https gith
  • QT QGraphics场景绘制圆弧

    我有一个关于在场景上绘制特定弧线的问题 我有关于弧的信息 起始坐标 起始角度 结束角 半径 但我无法有效地使用它们QPainter 其实我尝试过QPainterPath使用形状来显示QGraphicsScene with addPath 但
  • 当Android应用程序关闭或失去焦点时如何调用方法?

    因为我正在构建的应用程序将处理相当敏感的数据 所以我想在每次用户登录时将 SQLite 数据库与服务器同步 并在每次应用程序失去焦点时删除空数据库 因为用户移动到主屏幕或另一个应用程序 Seeing 活动生命周期 http develope
  • 如何在 Intellij IDEA 中查找父传递依赖项

    我可以看到我的项目的 Gradle 依赖项有 2 个版本的 google guice 库 com google inject guice 4 0 和 com google inject guice 3 0 我试图找到这些是从哪个父库导入的
  • 如何在 Pester 测试中模拟 Read-Host?

    如果我有这个功能 Function Test Foo filePath Read Host Tell me a file path 我如何模拟读取主机以返回我想要的内容 例如我想做这样的事情 这不起作用 Describe Test Foo
  • 为什么 setImageResource 不显示任何内容?

    我想根据数据库值在 ListView 中显示一个图标 我跟随this https stackoverflow com questions 2192082 android changing an imageview src depending
  • 对于理解有类似“flatYield”之类的东西吗?

    我有一些代码像 all data have different types val data1Future loadData1 params val data2Future loadData2 params val data3Future
  • 使用 AngularFire 从 Firebase 中选择随机记录

    有没有办法从 firebase 获取随机记录 如下所示 JbmopNnshefBT2nS2S7 dislike 0 like 0 post First post JbmoudijnJjDBSXNQ8 dislike 0 like 0 pos
  • 无法从 SQL Azure 生成脚本

    我想在连接到 sql server R2 后生成 SQL Azure 数据库的脚本 但是当我这样做时它给了我错误 gt 标题 Microsoft SQL Server Management Studio 服务器 myserver 的脚本失败
  • GCC - 没有关于带有 -O0 的未初始化数组的警告

    我的 GCC 7 3 0 和 8 2 0 有一些我无法解释的奇怪行为 这个程序显然以分段错误结束 int main double array 2 0 0 printf f n array 999 return 0 编译为 gcc Wall
  • 在python中将图像转换为csv文件

    我已将图像转换为 csv 文件 它就像一个矩阵 但我希望它是单行 如何将数据集中的所有图像转换为 csv 文件 每个图像转换为一行 这是我使用过的代码 from PIL import Image import numpy as np imp
  • 删除从最后一次出现的特定字符序列开始的所有字符

    我正在解析一些电子邮件 Mobile Mail iPhone 和 iPod touch 会附加一个签名作为单独的边界 使其易于删除 并非所有邮件客户端都这样做 只是使用 作为签名分隔符 我需要从字符串中删除 但只删除最后一次出现的 样本副本
  • C++ 范围 for 循环与常规 for 循环不同[关闭]

    Closed 这个问题需要细节或清晰度 help closed questions 目前不接受答案 与常规 for 循环相比 范围 for 循环提供不同的地址 如何使用增强的 for 循环 iArr地址 011bf7cc 循环地址范围 01