调用opencv时,使用Egien工具出现“error C2061: 语法错误: 标识符“Matrix””和“error C2653: “Eigen”:不是类或命名空间名称”该如何解决?
Posted 月夜汐枫
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了调用opencv时,使用Egien工具出现“error C2061: 语法错误: 标识符“Matrix””和“error C2653: “Eigen”:不是类或命名空间名称”该如何解决?相关的知识,希望对你有一定的参考价值。
这个问题主要是由于头文件的编译问题引起的。
1.如果没有Eigen工具的,先下载Egien工具并配置。
Egien可以去主页下载。配置时,打开你的c++工程属性页:配置属性->C/C++->常规->附加包含目录,然后添加你下载的Eigen的文件夹的路径即可。我的配置是:
2.配置好的,在编译时出现这种问题,主要是由于头文件的编译顺序问题。
如果按照下面这种顺序:
#include <opencv2/core/eigen.hpp>
#include <Eigen>
就会产生标题所阐述的错误。
解决方法很简单,就是把编译顺序调换下即可:
#include <Eigen>
#include <opencv2/core/eigen.hpp>
以上是关于调用opencv时,使用Egien工具出现“error C2061: 语法错误: 标识符“Matrix””和“error C2653: “Eigen”:不是类或命名空间名称”该如何解决?的主要内容,如果未能解决你的问题,请参考以下文章
在 npm install 上出现错误,因为 npm ERR cb() 从未调用过
为啥我使用来自 Angular 服务的自签名证书调用 HTTPS API 时会出现此 ERR_CERT_AUTHORITY_INVALID 错误?
npm 启动错误并出现 ERR!代码 ENOENT,系统调用打开
在某些 AJAX 调用中出现“net::ERR_BLOCKED_BY_CLIENT”错误