1.使用共享dll,程序退出出现内存溢出。原因:opencv的..core.dll先与mfc.dll加载。代码中出现数据类型Mat,就会出现溢出。解决:(1)使用静态dll;(2)把出现的代码封装成dll。
2.静态dll,程序中使用了vector容器,如:vector<Vec3f> circles,程序运行报错。原因:vector容器析构报错。解决:vector定义时给定大小。如:vector<Vec3f> circles(100)。
3.使用静态dll库,现象:使用cvtcolor,threshold,findContours,后面释放资源,释放不掉,会产生内存溢出。