取消引用向量的结束迭代器时打印奇数值

2023-12-11

我有一个存储 {1,2,3,4,5} 的向量。我尝试打印*(vec.end())并得到结果 6。我不知道如何解释这一点。同样,调用vec.find(500)结果为 6。为什么我会得到这个数字?

#include<iostream>
#include<iterator>
#include<set>
#include<map>
int main()
{
    int a[] = {1,2,3,4,5};
    std::set<int> set1(a,a+sizeof(a)/sizeof(int));
    for (std::set<int>::iterator itr=set1.begin();itr!=set1.end();++itr){
        std::cout << *itr << std::endl;
    }
    //std::pair<std::set<int>::iterator, bool> ret;
    //ret = set1.insert(1);
    //std::cout << *(ret.first) << "first;second" << ret.second << std::endl;
    std::set<int>::iterator itr1 = set1.begin();
    set1.insert(itr1,100);
    std::advance(itr1,3);
    std::cout << *itr1 << std::endl;
    std::cout << *(set1.find(500)) << std::endl;
    std::cout << *(set1.end()) << std::endl;
}

此行调用未定义的行为:

std::cout << *(set1.end()) << std::endl;

取消引用是未定义的行为end()迭代器。因此,任何事情都是可以期待的。

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

取消引用向量的结束迭代器时打印奇数值 的相关文章

  • 调用 McAfee 病毒扫描引擎

    我收到客户的请求 要求使用他们服务器上的 McAfee 病毒扫描将病毒扫描集成到应用程序中 我做了一些调查 发现 McScan32 dll 是主要的扫描引擎 它导出各种看起来有用的函数 我还发现提到了 McAfee Scan Engine
  • 在 xaml 中编写嵌套类型时出现设计时错误

    我创建了一个用户控件 它接受枚举类型并将该枚举的值分配给该用户控件中的 ComboBox 控件 很简单 我在数据模板中使用此用户控件 当出现嵌套类型时 问题就来了 我使用这个符号来指定 EnumType x Type myNamespace
  • 根据属性的类型使用文本框或复选框

    如果我有这样的结构 public class Parent public string Name get set public List
  • 通过引用传递 [C++]、[Qt]

    我写了这样的东西 class Storage public Storage QString key const int value const void add item QString int private QMap
  • 如何在 C# 中打开 Internet Explorer 属性窗口

    我正在开发一个 Windows 应用程序 我必须向用户提供一种通过打开 IE 设置窗口来更改代理设置的方法 Google Chrome 使用相同的方法 当您尝试更改 Chrome 中的代理设置时 它将打开 Internet Explorer
  • 传递给函数时多维数组的指针类型是什么? [复制]

    这个问题在这里已经有答案了 我在大学课堂上学习了 C 语言和指针 除了多维数组和指针之间的相似性之外 我认为我已经很好地掌握了这个概念 我认为由于所有数组 甚至多维 都存储在连续内存中 因此您可以安全地将其转换为int 假设给定的数组是in
  • 如何使从 C# 调用的 C(P/invoke)代码“线程安全”

    我有一些简单的 C 代码 它使用单个全局变量 显然这不是线程安全的 所以当我使用 P invoke 从 C 中的多个线程调用它时 事情就搞砸了 如何为每个线程单独导入此函数 或使其线程安全 我尝试声明变量 declspec thread 但
  • 对类 static constexpr 结构的未定义引用,g++ 与 clang

    这是我的代码 a cp p struct int2 int x y struct Foo static constexpr int bar1 1 static constexpr int2 bar2 1 2 int foo1 return
  • 需要帮助优化算法 - 两百万以下所有素数的总和

    我正在尝试做一个欧拉计划 http projecteuler net问题 我正在寻找 2 000 000 以下所有素数的总和 这就是我所拥有的 int main int argc char argv unsigned long int su
  • 方程“a + bx = c + dy”的积分解

    在等式中a bx c dy 所有变量都是整数 a b c and d是已知的 我如何找到整体解决方案x and y 如果我的想法是正确的 将会有无限多个解 由最小公倍数分隔b and d 但我只需要一个解决方案 我可以计算其余的 这是一个例
  • 人脸 API DetectAsync 错误

    我想创建一个简单的程序来使用 Microsoft Azure Face API 和 Visual Studio 2015 检测人脸 遵循 https social technet microsoft com wiki contents ar
  • WcfSvcHost 的跨域异常

    对于另一个跨域问题 我深表歉意 我一整天都在与这个问题作斗争 现在已经到了沸腾的地步 我有一个 Silverlight 应用程序项目 SLApp1 一个用于托管 Silverlight SLApp1 Web 的 Web 项目和 WCF 项目
  • 实例化类时重写虚拟方法

    我有一个带有一些虚函数的类 让我们假设这是其中之一 public class AClassWhatever protected virtual string DoAThingToAString string inputString retu
  • C 编程:带有数组的函数

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

    我正在尝试使用 LINQ 执行以下 SQL 最接近的是执行交叉联接和总和计算 我知道必须有更好的方法来编写它 所以我向堆栈团队寻求帮助 SELECT T1 Column1 T1 Column2 SUM T3 Column1 AS Amoun
  • 编译时展开 for 循环内的模板参数?

    维基百科 here http en wikipedia org wiki Template metaprogramming Compile time code optimization 给出了 for 循环的编译时展开 我想知道我们是否可以
  • C++ 继承的内存布局

    如果我有两个类 一个类继承另一个类 并且子类仅包含函数 那么这两个类的内存布局是否相同 e g class Base int a b c class Derived public Base only functions 我读过编译器无法对数
  • 使用特定参数从 SQL 数据库填充组合框

    我在使用参数从 sql server 获取特定值时遇到问题 任何人都可以解释一下为什么它在 winfom 上工作但在 wpf 上不起作用以及我如何修复它 我的代码 private void UpdateItems COMBOBOX1 Ite
  • 为什么 std::uint32_t 与 uint32_t 不同?

    我对 C 有点陌生 我有一个编码作业 很多文件已经完成 但我注意到 VS2012 似乎有以下语句的问题 typedef std uint32 t identifier 不过 似乎将其更改为 typedef uint32 t identifi
  • DotNetZip:如何提取文件,但忽略zip文件中的路径?

    尝试将文件提取到给定文件夹 忽略 zip 文件中的路径 但似乎没有办法 考虑到其中实现的所有其他好东西 这似乎是一个相当基本的要求 我缺少什么 代码是 using Ionic Zip ZipFile zf Ionic Zip ZipFile

随机推荐

  • 具有返回 char* 函数的内存管理

    今天 我没有多想 就根据给定枚举值的 switch 语句编写了一个返回 char 的简单函数 然而 这让我想知道如何释放那段记忆 我所做的是这样的 char func char retval new char 20 Switch blah
  • 如何在同一个图表上合并一条线和散点图?

    使用 Rplotly 包创建时 从 data frame 创建的两个单独的图表可以正常工作 然而 我不知道如何将它们组合成一个 大概是使用 add trace 函数 df lt data frame season c 2000 2000 2
  • 如何访问框架内的页面内容?

    我在主窗口内有一个框架 里面有一个带有面板和各种内容的页面 主窗口决定加载哪个页面 然后必须与其内容交互 这就是问题所在 我已经尝试了很多解决方案 最好的是这个 但返回 pageLogin 作为空对象 mainFrame Source ne
  • 在源代码树而不是包中运行所有测试

    我的单元测试与集成测试位于单独的目录树中 但具有相同的包结构 我的集成测试需要可用的外部资源 例如服务器 但我的单元测试完全独立于彼此和环境 在 IntelliJ IDEA v7 中 我定义了一个 JUnit 运行 调试配置来运行顶级包中的
  • 理解这个removeAll java方法和arrayList

    此方法的职责是删除所有出现的值toRemove来自数组列表 剩余的元素应该只是向列表的开头移动 大小不会改变 末尾的所有 额外 元素 但是多次出现toRemove位于列表中 应该只用 0 填充 该方法没有返回值 如果列表没有元素 那么它应该
  • 考虑到记录的大小,在网格视图中实现分页的最佳程序是什么?

    我在 sq server db 中有一个表有超过 100 万行 我需要在 gridview 中显示这些数据 并在 asp net 页面中分页 由于记录量较大 我需要提高页面显示数据的性能 实现分页 我应该遵循什么程序来实现分页 请帮忙 有多
  • Python - getattr 和串联

    因此 在我的代码中使用 getattr 时 我发现了以下内容 myVariable foo A bar 有效 但是是这样的 B A myVariable getattr foo B bar 返回错误 指出 foo 不包含属性 A bar 我
  • 如何在 pygtk 中更改 gtk.TreeView 的交替背景行颜色?

    我正在尝试更改树视图的交替背景颜色 我知道这通常应该由主题决定 但我想重写以测试 gtk 样式功能 根据树形视图文档here 我了解到 TreeView 有几个只读的样式选项 包括 偶数行颜色 奇数行颜色 和 允许规则 根据文档 允许绘制偶
  • php: file_get_contents() 可与 CLI 配合使用,但在服务器上调用时不起作用(在页面中)

    我有点困惑 我正在使用 bit ly PHP API 来缩短一些网址 这在本地主机上运行良好 但是当我在我的服务器上尝试它时 在 Apache 中运行的 php file get contents 返回一个空字符串 我检查了 apache
  • 列插入或更新与先前的 CREATE RULE 语句强加的规则冲突

    我正在开发一款在线游戏 我在向表插入新数据时遇到一些问题 我越来越 2010 4 8 2 14 37000 513 微软 ODBC SQL Server 驱动程序 SQL Server 列插入或 更新与强加的规则冲突 通过先前的 CREAT
  • 带图像的角度选择

    情况 我需要在语言选择中插入标志 我在 Google 和 StackOverflow 中进行了搜索 但找到的解决方案对我不起作用 代码 在控制器中 scope language list name english url https raw
  • 为什么这个简单的移动表单在使用播放器时没有关闭

    我使用关闭按钮创建了这个简单的示例表单 不使用 Interop WMPLib dll 时 一切都按预期工作 我见过其他应用程序使用它没有问题 但为什么当我添加以下行时表单进程没有关闭 SoundPlayer myPlayer new Sou
  • jQuery 绑定事件根本不起作用

    我尽了一切努力去实现它 但没有成功 问题是我在运行时创建一个元素 然后将一个函数绑定到该元素 如下代码所示 document ready function rem click function body append a href runt
  • 从 QR 分解中获取帽子矩阵以进行加权最小二乘回归

    我正在尝试延长lwr 包的功能McSptial 它适合作为非参数估计的加权回归 在核心lwr 函数 它使用以下方式反转矩阵solve 而不是 QR 分解 导致数值不稳定 我想改变它 但不知道如何从 QR 分解中获取帽子矩阵 或其他导数 有数
  • 在 emacs 中使用 rebar 吗?

    有一个defun在 emacs 中获取 erlang 项目路径 如何执行 shell 命令来执行以下操作 cd erlang project folder make 我正在使用 rebar 来构建我的项目 并且有一个 Makefile 可以
  • 使用 HTML5 画布创建颜色选择渐变(所有可能的 RGB 颜色)

    是否可以为线性颜色选择器创建包含所有可能的 RGB 颜色 仅红色 绿色 蓝色 无 alpha 值 的线性渐变 到目前为止 我已经尝试使用以下渐变 但它不包含来自的所有值rgb 0 0 0 to rgb 255 255 255 var grd
  • BatchBlock 使用 TriggerBatch() 之后发送的元素生成批次

    我有一个由多个块组成的数据流管道 当元素流经我的处理管道时 我想按字段对它们进行分组A 为此 我有一个BatchBlock与高BoundedCapacity 我在其中存储我的元素 直到我决定应该释放它们 所以我调用TriggerBatch
  • 浏览器上的tensorflowjs中的“未知层:Lambda”

    我是机器学习领域的新手 我正在尝试通过在tensorflow js中转换经过训练的模型来在浏览器上运行python程序 这个attention ocr与用python编写的OCR有关 我已经生成了 HD F5 H5 文件并将其转换为 Web
  • AngularJS:HTML 编译器如何安排编译顺序?

    当页面上的多个元素存在多个指令时 Angular 的 HTML 编译器如何安排编译顺序 假设我有以下标记 其中 alpha beta 和 gamma 是自定义 Angular 指令
  • 取消引用向量的结束迭代器时打印奇数值

    我有一个存储 1 2 3 4 5 的向量 我尝试打印 vec end 并得到结果 6 我不知道如何解释这一点 同样 调用vec find 500 结果为 6 为什么我会得到这个数字 include