Qt+opencv+QCcharts报错:“ACCESS_MASK”is ambiguous,一百多行。
【已解决】“ACCESS_MASK”is ambiguous,报错一百多行。
·
起初,用cmake将opencv编译好,并且成功引用opencv库都没有报错。但是用一下语句导入QCharts部分报错。
#include <QtCharts>
QT_CHARTS_USE_NAMESPACE
查找了一下原因,是以下部分产生冲突:
typedef PVOID PACCESS_TOKEN;
typedef PVOID PSECURITY_DESCRIPTOR;
typedef PVOID PSID;
typedef PVOID PCLAIMS_BLOB;
typedef DWORD ACCESS_MASK;
typedef ACCESS_MASK *PACCESS_MASK;
最后的原因是导入新的库以后:
#include <winnt.h>
这个与opencv产生了冲突。
解决办法:查找所有的.h、.cpp文件,不能包含:
using namespace cv;
注意一定要所有的文件都不能包含有这个命名空间的引用。
那么如何使用opencv里的函数呢,就是在使用每一个函数时都用:
cv::function();
这样的方法,function()代指opencv库里能替换的函数。
更多推荐
所有评论(0)