Notes_STL_List_And_Map
//Description: 使用STL遇到的问题
//Create Date: 2019-07-08 09:19:15
//Author: channy
Notes_STL_List_And_Map
已知:erase后迭代器会失效,已经重置了迭代器
问题:程序依旧会崩溃
原因:此代码中原因还未知。工作代码中出现过erase的是局部变量,实际上map还是没有erase
跟进:过了几天再试又好了。。。
(没有经历过把bug解释为神学的程序员不是好程序员)
代码:
#include <QCoreApplication>
#include <QDebug>
int main(int argc, char *argv[])
{
//QCoreApplication a(argc, argv);
QList<int> ql;
qDebug() << ql.size();
QMap<int, QList<int>> qm;
qm[0] = ql;
for (QMap<int, QList<int>>::iterator iter = qm.begin(); iter != 大专栏 Notes_STL_List_And_Map"n">qm.end(); iter++) {
qDebug() << qm.size();
for (QList<int>::iterator itr = iter->begin(); itr != iter->end(); itr++) {
itr = iter->erase(itr);
}
if (iter->size() == 0) {
iter = qm.erase(iter);
//如果不加下面的判断,会崩溃。。。iter != qm.end() == true. But why???
if (qm.size() == 0) break;
}
}
//return a.exec();
return 0;
}
Notes_STL_List_And_Map的更多相关文章
随机推荐
- 吴裕雄--天生自然JAVA SPRING框架开发学习笔记:第一个Spring程序
1. 创建项目 在 MyEclipse 中创建 Web 项目 springDemo01,将 Spring 框架所需的 JAR 包复制到项目的 lib 目录中,并将添加到类路径下,添加后的项目如图 2. ...
- 开始linux课程预习工作
预习的过程,就是在老师讲课之前,自己学习的过程.重点,难点,疑点,不等老师先讲,自己先趟一遍,老师在讲的时候,相信会吸收的更好一些.
- POJ - 3658 Artificial Lake
题意:向N个连续且高度不同的平台灌水,平台各有宽度,且高度各不相同.一开始,先向高度最低的平台灌水,直到灌满溢出,流向其他的平台,直至所有平台都被覆盖.已知每分钟注入高度为1且宽度为1的水,问每个平台 ...
- 小白需要了解的Ajax和websocket的区别以及使用场景!
在我们日常使用的互联网产品中,很多都是前后端数据的交互来完成的,说到数据交互就不得不提Ajax和websocket,它们可是数据交互的利器,那么它们分别是什么?websocket与Ajax轮询的区别又 ...
- (函数)P1217 [USACO1.5]回文质数 Prime Palindromes
题解: 第一次: 算法复杂度过高,导致编译超时,需要优化 #include<stdio.h>#include<math.h>int a[100000001] = { 0 };i ...
- Cookie的作用范围、设置、创建、获取的方法
cookie的作用范围 同一浏览器,同一路径 默认情况下, 上级目录设置的cookie,下级目录可以获取到, 而下级目录设置的cookie,上级目录不能获取. 即:在一个页面设置cookie,那么这个 ...
- go语言实现leetcode-242
package main import ( "fmt" "reflect" ) func isAnagram(s string, t string) bool ...
- 触发器-- 肖敏_入门系列_数据库进阶 60、触发器(三) --youku
二 https://v.youku.com/v_show/id_XMzkxOTc5NDY0OA==.html?spm=a2h0k.11417342.soresults.dtitle 三 https:/ ...
- Windows下将Python源代码.py文件封装成exe可执行文件方法
安装pyinstaller cmd中使用pip安装 pip install pyinstaller 同时会自动安装pywin32(pip真慢50M这里就走20KB),可以进行切换为国内源进行提速. 就 ...
- vue中使用elementUI中表格的v宽度,字体大小
<el-table :row-style="{height:'20px'}" :cell-style="{padding:'0px'}" style=&q ...