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的更多相关文章
随机推荐
- 吴裕雄--天生自然TensorFlow2教程:填充与复制
import tensorflow as tf a = tf.reshape(tf.range(9), [3, 3]) a tf.pad(a, [[0, 0], [0, 0]]) tf.pad(a, ...
- vue-cli3.x 搭建项目目
安装文档 https://cli.vuejs.org/zh/guide/ 安装条件 npm 更至最新 node >=8.9 可以用npm -v 查看npm的版本号 1.关于旧版本 Vue CLI ...
- SAP_ABAP常用事务代码
ST05: 性能跟踪(Performance Trace) SE30/SAT: ABAP对象性能分析 ST12: 单个对象性能分析(Single transaction analysis)
- ArchLinux安装Gnome桌面
给Arch安装Gnome桌面美化及常用软件配置 一.创建普通用户 1.安装zsh 个人比较喜欢的一个shell,你们可以和我不同 # pacman -S zsh 2.创建用户 kain是我创建用户的名 ...
- 18 12 28 css 浮动 定位
浮动 浮动特性 1.浮动元素有左浮动(float:left)和右浮动(float:right)两种 2.浮动的元素会向左或向右浮动,碰到父元素边界.其他元素才停下来 3.相邻浮动的块元素可以并在一行, ...
- 谈IO中的阻塞和非阻塞,同步和异步及三种IO模型
什么是同步和异步? 烧水,我们都是通过热水壶来烧水的.在很久之前,科技还没有这么发达的时候,如果我们要烧水,需要把水壶放到火炉上,我们通过观察水壶内的水的沸腾程度来判断水有没有烧开.随着科技的发展,现 ...
- Delphi生成即调用带窗体的Dll
library frmDll; { Important note about DLL memory management: ShareMem must be the first unit in you ...
- CentOS 7.3 下部署基于 Node.js的微信小程序商城
本文档为微信小程序商城NideShop项目的安装部署教程,欢迎star NideShop商城api服务:https://github.com/tumobi/nideshop NideShop微信小程序 ...
- winform显示、隐藏任务栏及开始菜单
private const int SW_HIDE = 0; //隐藏 private const int SW_RESTORE = 9;//显示 /// <summary> /// 获取 ...
- VUE- iView组件框架的使用
VUE- iView组件框架的使用 1. 下载iView 工程. 引用:https://www.iviewui.com/