平台环境
我使用的是VS2013 + OpenCV3.0,在编译程序时,提示出现如下错误:

什么原因导致的?
最后经过查找资料发现,是因为我项目中的其中一个头文件(.h)中使用了
using namspace cv
空间命名,但是我在源文件中又引用了系统头文件
#include<windows.h>
,这样就会导致了冲突。原因是他们俩中都有
ACCESS_MASK
定义,所以就会导致该变量不明确,就会报错。
解决办法
最方便的解决办法可能就是,将所有的头文件(.h)中的
using namespace cv
都去掉,然后将需要用到的地方用
cv::
代替。然后将
using namespace cv
放入到cpp文件中,在cpp文件中不会导致冲突。所以就只会在.h文件中麻烦一点。