解决findContours的使用陷阱问题

求教。
使用的是VS2008+Opencv2.31,其实这个没影响,问题出在调用findContour函数之后会出现问题,代码如下:
vector hierarchy;
vector> contours;
Mat m_threimg(threimg2);
findContours(m_threimg,contours,CV_RETR_EXTERNAL,CV_CHAIN_APPROX_NONE);
图片说明
图片说明
按照网友提供的解决方法,项目--属性--配置属性--常规--MFC的使用-- 选择
在共享DLL中使用MFC,这样设置之后可以成功运行。
但是,我想一直使用“在静态库中使用MFC”的设置,因为我做的是一个小系统,里面除了这小方法之外还有其他的好多个算法,其中有些当时出问题是建议使用静态库的,如果因为这段代码改成共享dll,那么前面还要改很多。
所以,想请教一下,如何在静态库中使用MFC前提下解决findContours的使用陷阱问题?

MFC opencv2.3.1环境下 vector析构出错

MFC opencv2.3.1环境下 vector析构出错

是不是版本问题,有bug

我的是这样的就可以了

vector<Mat> contours(100); 
Mat hierarchy;
findContours( BW, contours, hierarchy, CV_RETR_CCOMP, CV_CHAIN_APPROX_NONE );