“cv::max”: 6 个重载中没有一个可以转换所有参数类型

来源:互联网 发布:hadoop与云计算的关系 编辑:程序博客网 时间:2024/06/14 23:54

VS2010和opencv249

最近调试一个MFC工程时出现如下错误:

1>ClCompile:

1>  stdafx.cpp
1>d:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxtoolbar.h(171): error C2665: “cv::max”: 6 个重载中没有一个可以转换所有参数类型
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1328): 可能是“cv::MatExpr cv::max(const cv::Mat &,const cv::Mat &)”
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1329): 或       “cv::MatExpr cv::max(const cv::Mat &,double)”
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1330): 或       “cv::MatExpr cv::max(double,const cv::Mat &)”
1>          尝试匹配参数列表“(int, LONG)”时
1>d:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxmenubar.h(161): error C2665: “cv::max”: 6 个重载中没有一个可以转换所有参数类型
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1328): 可能是“cv::MatExpr cv::max(const cv::Mat &,const cv::Mat &)”
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1329): 或       “cv::MatExpr cv::max(const cv::Mat &,double)”
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1330): 或       “cv::MatExpr cv::max(double,const cv::Mat &)”
1>          尝试匹配参数列表“(int, LONG)”时
1>d:\program files (x86)\microsoft visual studio 10.0\vc\atlmfc\include\afxdesktopalertwnd.h(81): error C2665: “cv::max”: 6 个重载中没有一个可以转换所有参数类型
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1328): 可能是“cv::MatExpr cv::max(const cv::Mat &,const cv::Mat &)”
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1329): 或       “cv::MatExpr cv::max(const cv::Mat &,double)”
1>          d:\program files\opencv249\build\include\opencv2\core\mat.hpp(1330): 或       “cv::MatExpr cv::max(double,const cv::Mat &)”
1>          尝试匹配参数列表“(int, UINT)”时
1>

1>生成失败。


原来是头文件放错位置了,讲#include <opencv2\opencv.hpp>等自己添加的头文件放到stdafx.h最后面,也就是#ifdef _UNICODE前面,如果放到

#ifndef _AFX_NO_OLE_SUPPORT
#include <afxdtctl.h>           // MFC 对 Internet Explorer 4 公共控件的支持
#endif

前面就会出现如上问题

0 0