改成:
CvMemStorage* m_storage=cvCreateMemStorage(0); CvSeq * m_contour=0; cvFindContours( &IPlImage(img), m_storage, &m_contour, sizeof(CvContour), CV_RETR_LIST, CV_CHAIN_APPROX_SIMPLE, cvPoint(0,0)); //释放内存 cvReleaseMemStorage(&m_storage);
Ps:vector元素的赋值要用push_back()函数,不能直接下标赋值(呜呜,之前这里失误过)。但读取元素的时候可以直接用下标读取。
另外这是工作中的一个小bug
msdn:https://msdn.microsoft.com/en-us/library/f7yseh4d.aspx
一个对vector内存管理的详细解释:http://www.cnblogs.com/summerRQ/articles/2407974.html
小魏对opencv里内存问题的解答:http://blog.csdn.net/xiaowei_cqu/article/details/7586847