• 6979阅读
  • 6回复

Qt中的内存泄露? [复制链接]

上一主题 下一主题
离线exile
 
只看楼主 倒序阅读 楼主  发表于: 2009-01-23
— 本帖被 XChinux 执行加亮操作(2009-01-23) —
我使用了QAbstractItemModel, 发现有内存泄露。后来在编译QT自带的例子 ItemView  目录下的DirView时同样发现有大量的内存泄露,这是什么原因?Qt 本身的Bug?

我的环境是:Windows XP(SP2),    VC2008SP1,  Qt4.4.3 OpenSource。
使用的是vc9 的crtdbg 内存检查工具,
_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG | _CRTDBG_LEAK_CHECK_DF);

DirView是一个很简单的程序,说明Model/View 框架的用法,语句不过就是下面几句:

    QDirModel model;
    QTreeView tree;
    tree.setModel(&model);
    tree.show();
    return app.exec();
难道是Model/View 框架的问题?
离线duduqq

只看该作者 1楼 发表于: 2009-01-23
我也运行过这个例子,我还发为要获取文件夹下面的文件太多了,所以会慢呢!
我是在Ubuntu下运行的。
离线wd007

只看该作者 2楼 发表于: 2009-01-23
qt的内存回收机制不是很明白,希望哪位能解释一下
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线exile
只看该作者 3楼 发表于: 2009-01-23
我查了一下,用boundchecker或者valgrind也存在这个问题。但又不是真正的内存泄露,只是由于QT的内存管理机制造成的。没办法,只有把内存检查关了。
离线wd007

只看该作者 4楼 发表于: 2009-01-31
我是觉得qt的程序占用资源比较多的,效率似乎是一个问题
欢迎访问我的博客,一起学习提高
http://blog.csdn.net/qter_wd007
离线skysquall
只看该作者 5楼 发表于: 2009-06-11
哎,最近在做文件浏览的时候也遇到这个问题啦。
在主菜单界面和文件浏览界面切换的时候,内存会不断增长,不知道怎么解决啦。
主菜单窗口和文件浏览窗口是2个独立的窗口,每次delete掉文件浏览窗口。然后下次再从主菜单进入文件浏览窗口,内存会一点点曾加
离线duduqq

只看该作者 6楼 发表于: 2009-06-11
引用第5楼skysquall于2009-06-11 14:35发表的  :
哎,最近在做文件浏览的时候也遇到这个问题啦。
在主菜单界面和文件浏览界面切换的时候,内存会不断增长,不知道怎么解决啦。
主菜单窗口和文件浏览窗口是2个独立的窗口,每次delete掉文件浏览窗口。然后下次再从主菜单进入文件浏览窗口,内存会一点点曾加

不要delete它,先让它hide()先,再次调用时再show()看看有没有问题。
快速回复
限100 字节
 
上一个 下一个