opencv3.0的cv “ACCESS_MASK”冲突

来源:互联网 发布:光棍节程序员闯关 编辑:程序博客网 时间:2024/06/05 20:55

具体如下:

C:\Program Files (x86)\Windows Kits\8.0\Include\um\winspool.h(1182): error C2872: “ACCESS_MASK”: 不明确的符号          可能是“C:\Program Files (x86)\Windows Kits\8.0\Include\um\winnt.h(8533) : DWORD ACCESS_MASK”          或       “D:\opencv\v11_x86_cuda_ipp_tbb_openmp\include\opencv2/core/mat.hpp(63) : ACCESS_MASK”
在winnt.h里面有一个cv的命名空间,同样定义了一个ACCESS_MASK,跟opencv的cv::ACCESS_MASK发生了冲突!!!

该冲突在MFC中没有出现,在控制台程序中才会报错, -_-!这是因为预编译头stdafx.h,加入了Windows SDK的引用,从而引用了winnt.h

对于opencv 2.x版本,不存在该问题。但如果是opencv3.0,请不要在代码中使用using namespace cv;  乖乖地在每一个opencv函数前加上cv::吧。当然,这仅限于开发平台为VS的情况




2 5