QList 列表指針的 釋放


1,使用qDeleteAll()

    QList<T*> list;

    qDeleteAll(list);

    list = NULL;

    QList<T*> *listp;

    qDeleteAll(*list);

    listp->clear();

    listp = NULL;

 

2.通過遍歷列表對列表一個一個的釋放。

在釋放指針的同時把值清空,賦值為BULL 避免野指針。

QList<T *> *qList = new QList<T *>  動態分配內存空間 不使用時需要釋放

T *t = new T;

qList->append(t);

           QList<t*>::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;

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM