当我使用“命令行工具”c++ stdc++ 模板创建 xCode 项目时,我能够包含并编译 opencv 标头并运行一些代码。
但我想在“Cocoa 应用程序”上下文中使用 OpenCV。使用该模板创建时,当我在 main.mm 中包含 OpenCV 标头时,出现编译错误。 (我已经将 main.m 更改为 main.mm,'//NSApplicationMain(argc, (const char **) argv);' 被注释掉)
这些错误之一是:“语句表达式只允许在函数内部使用”
我想它是某种编译器版本错误,但是当我比较项目构建设置时,我找不到差异。
您有什么想法/专业知识吗?
我也遇到了同样的问题,我花了两天时间进行了认真的系统跟踪,不出所料,解决方案非常简单,一个 8 岁的孩子可能比我更快找到它。
准备好了吗?
在要使用 OpenCV 的 .mm 文件中,您需要执行以下操作#include "opencv2/opencv.hpp"
在任何其他包含之前。就是这样!只需将它向上移动一条线,就会发现您的问题神奇地消失得比真正将房间连接在一起的地毯更快。
顺便说一句,这是针对 OpenCV 2.2 的,因此是新的包含文件。另外,如果您的 XCode 项目使用前缀头文件(在“其他来源”中查找“YourProjectName_Prefix.pch”文件),那么您需要将您的#include "opencv2/opencv.hpp"
在那里而不是在任何其他文件中。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)