QMap 删除指针内容时的一个问题
2024-09-08 19:42:25
在测试代码时,发现一个问题:
void UserManager::removeUser(const QString &name)
{
QMap<QString, User*>::Iterator it;
it = mUsers.find(name);
if (it != mUsers.end())
{
delete it.value();
mUsers.erase(it);
}
}
测试时,该函数的测试结果有时显示,有时不显示。很好奇,到底是哪里出了问题。
Debug 运行时,都是正常的。
事出反常,必有妖。
仔细观察这段代码,发现,it.value() 有个const 后缀。会不会是这个原因呢?
最新文章
- Cosmos —— Big Data at Microsoft
- 每天一个linux命令(48):watch命令
- sql server 字符串函数str()
- topcoder SRM 618 DIV2 LongWordsDiv2
- OC中的属性、方法及内存管理
- SQL 编辑
- jqgrid 设置单元格编辑/不可编辑
- hdu 4815	 Little Tiger vs. Deep Monkey
- MySQL 选择数据库
- [Non-original]OS X How do I unset an IP address set with ifconfig?
- getWritableDatabase()与getReadableDatabase()的区别:
- BZOJ 3404: [Usaco2009 Open]Cow Digit Game又见数字游戏(博弈论)
- PAT乙级-1036.跟奥巴马一起编程(15)
- CSS3和H5的新特性
- Python 使用for...in...和 while 循环 实现8种格式的 九九乘法表
- bash if 表达式含义
- vijos 1096 津津的储存计划
- 【转】如何选择Html.RenderPartial和Html.RenderAction
- 安装部署Apache Hadoop (完全分布式模式并且实现NameNode HA和ResourceManager HA)
- 优化器Optimizer