QList <struct>和内存泄漏

时间:2017-05-10 06:03:29

标签: c++ struct memory-leaks removechild qlist

我有这样的结构:

    struct MatInfo
   {
       cv::Mat mainImgMat;
       cv::Mat roiMat;
       CvRect roiRect;
       int lineId;
       bool doProcess;
       QString plateString;
       CvRect finalRect;
       float cnf;
    };

我想要一个这个结构的Qlist,它将成员添加到这样的插槽中:

    addToList(Mat m, Mat ocrMat, CvRect plateRect, int lineId, bool doProcess)
   {
        if (_lst_MatInfo.size() < 30 && !ocrMat.empty())
        {
            MatInfo info;
            info.mainImgMat = m;
            info.roiMat = ocrMat;
            info.roiRect = plateRect;
            info.lineId = lineId;
            info.doProcess = doProcess;

            _lst_MatInfo << info;

       }
    }

然后将在另一个线程中处理和释放Qlist的成员:

    ocr()
    {
        MatInfo matInfo = _lst_MatInfo.first();
       _lst_MatInfo.removeFirst();
       process(matInfo);
    }

注意我没有新的东西,每次我使用MatInfo时,我删除了Qlist的第一个成员。 但内存泄漏,应用程序停止工作。 我应该做什么比removeFirst()吗?

0 个答案:

没有答案