天天看点

OpenCV3.0 + VS2013出现“ACCESS_MASK不明确”错误

平台环境

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

OpenCV3.0 + VS2013出现“ACCESS_MASK不明确”错误

什么原因导致的?

最后经过查找资料发现,是因为我项目中的其中一个头文件(.h)中使用了

using namspace cv

空间命名,但是我在源文件中又引用了系统头文件

#include<windows.h>

,这样就会导致了冲突。原因是他们俩中都有

ACCESS_MASK

定义,所以就会导致该变量不明确,就会报错。

解决办法

最方便的解决办法可能就是,将所有的头文件(.h)中的

using namespace cv

都去掉,然后将需要用到的地方用

cv::

代替。然后将

using namespace cv

放入到cpp文件中,在cpp文件中不会导致冲突。所以就只会在.h文件中麻烦一点。

继续阅读