最近在测试QT的内存泄露,发现了不少问题,举个例子。
到底是我的理解错误,还是QT真存在着内存泄露? 例如下面两个例子,非常简单,for循环结束后:例子一,占用了2.4MB内存;例子二,占用了3.6MB内存; 之间相差了1MB内存,到底,这1MB内存,用到了什么地方? 例子一和例子二,只是把11和1100000两个数字换位了。 例子一:int main(int argc,char*argv[]){ QApplication app(argc,argv); QList<QString>* ls=new QList<QString>(); for(int j=0;j<1100000;j++) { for(int i=0;i<11;i++) { ls->append(QString::number(i)); } ls->clear(); } delete ls; return app.exec();} 例子二:int main(int argc,char*argv[]){ QApplication app(argc,argv); QList<QString>* ls=new QList<QString>(); for(int j=0;j<11;j++) { for(int i=0;i<1100000;i++) { ls->append(QString::number(i)); } ls->clear(); } delete ls; return app.exec();}