到底是我的理解错误,还是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();
}