QList 列表指针的操作 释放

1,使用qDeleteAll()

    QList list;

    qDeleteAll(list);

    list = NULL;

    QList *listp;

    qDeleteAll(*list);

    listp->clear();

    listp = NULL;

 

2.通过遍历列表对列表一个一个的释放。

在释放指针的同时把值清空,赋值为BULL 避免野指针。

QList *qList = new QList  动态分配内存空间 不使用时需要释放

T *t = new T;

qList->append(t);

           QList::iterator item = qList->begin();

            while(item != qList->end())
            {
                qList->removeOne(*item);
                T *index = (T*)*item;
                delete index;
                index = NULL;
                item++;
                qDebug()<< "dhsahdlhlas lish" << qList->length();
            }
            qList->clear();
            qList = NULL;

你可能感兴趣的:(QT)