关注
第六点 :这里实际上就是强调erase的用法,erase会把迭代器的指向it删除,然后返回下一个迭代器的位置,这个新的位置需要迭代器重新接收一下,不然会出现未定义的错误。#include <iostream> #include <vector> int main() { std::vector<int> vec = {1, 2, 3, 4, 5}; for (auto it = vec.begin(); it != vec.end(); ) { if (*it == 3) { it = vec.erase(it); // 删除元素并返回下一个有效迭代器,这样写是对的 } else { ++it; } } for (int v : vec) { std::cout << v << " "; // 输出: 1 2 4 5 } return 0; } //------------------------------------------------------------------- for (auto it = vec.begin(); it != vec.end(); ++it) { // 错误写法 if (*it == 3) { vec.erase(it); // 删除元素,但未更新迭代器 } }</int></vector></iostream>
查看原帖
点赞 评论
相关推荐
点赞 评论 收藏
分享
点赞 评论 收藏
分享
点赞 评论 收藏
分享
牛客热帖
更多
正在热议
更多
# 你见过哪些工贼行为 #
5704次浏览 37人参与
# 实习在多还是在精 #
5863次浏览 77人参与
# 爱玛科技集团求职进展汇总 #
31245次浏览 211人参与
# 找工作中的小确幸 #
15174次浏览 138人参与
# 反问环节如何提问 #
108040次浏览 2075人参与
# 你觉得什么岗位会被AI替代 #
8501次浏览 114人参与
# 实习下班不想学习,正常吗? #
6200次浏览 86人参与
# 秋招踩过的“雷”,希望你别再踩 #
29855次浏览 368人参与
# 校招谈薪一定要知道的事 #
5351次浏览 70人参与
# 我的求职进度条 #
2746次浏览 34人参与
# 远程面试的尴尬瞬间 #
186786次浏览 1236人参与
# 选完offer后,你后悔学机械吗? #
40015次浏览 243人参与
# 面包vs爱情,怎么选? #
19664次浏览 214人参与
# 你喜欢工作还是上学 #
76624次浏览 858人参与
# 浪潮求职进展汇总 #
18295次浏览 139人参与
# 机械人,签完三方你在忙什么? #
62288次浏览 235人参与
# 实习最想跑路的瞬间 #
82633次浏览 526人参与
# 贝壳求职进展汇总 #
36804次浏览 206人参与
# 你秋招想去哪些公司 #
63741次浏览 1700人参与
# 节后第一天上班,我的精神状态 #
15893次浏览 133人参与
# 新凯来求职进展汇总 #
53925次浏览 133人参与