Ios 在objective C中结合使用@import 当我尝试编译一个目标C++文件(.mm),它链接到一个使用新的@导入指令的文件时,我会得到一些错误。目前,我唯一的解决方案是用旧的#import指令替换@import
是否有其他解决方案,以便我仍然可以使用@import?编辑: 根据最新的文件,现在应该可以了 看。您必须使用Ios 在objective C中结合使用@import 当我尝试编译一个目标C++文件(.mm),它链接到一个使用新的@导入指令的文件时,我会得到一些错误。目前,我唯一的解决方案是用旧的#import指令替换@import,ios,objective-c++,directive,Ios,Objective C++,Directive,是否有其他解决方案,以便我仍然可以使用@import?编辑: 根据最新的文件,现在应该可以了 看。您必须使用-fcxx modules标志,而不是-fmodules标志,但正如官方文档所示-是实验性的,而且非常不稳定的。我根本没能让它工作。。。在我看来,最好坚持使用#import和#include,直到该功能退出实验阶段 发件人: 在我的情况下,我需要在我的应用程序中使用OpenCV 我通过添加 -FCXX模块(ObjultC++)手动“其他C++标志”< /P> (构建设置/苹果CLANG
-fcxx modules
标志,而不是-fmodules
标志,但正如官方文档所示-是实验性的,而且非常不稳定的
。我根本没能让它工作。。。在我看来,最好坚持使用#import
和#include
,直到该功能退出实验阶段
发件人:
在我的情况下,我需要在我的应用程序中使用OpenCV
我通过添加
<代码> -FCXX模块(ObjultC++)手动“其他C++标志”< /P>
(构建设置/苹果CLANG自定义编译器标志/其他C++标志)< /P>
或
-fmodules
(目标C)到“其他C标志”
(构建设置/Apple Clang-自定义编译器标志/其他C标志)
而且我还需要在任何苹果的头文件之前输入opencv.hpp
,以修复opencv库中预期标识符的错误。
例如,在Prefix.pch
中,我是这样组织的:
#ifdef __cplusplus
#include <opencv2/opencv.hpp>
#endif
#import <Availability.h>
\ifdef\uuucplusplus
#包括
#恩迪夫
#进口
我正在使用:
- Xcode-11.3
- 椰子荚-1.9.1
- OpenCV2-4.3.0
具体是哪些错误?在凯夫拉尔计划中,构建失败“出乎意料”@,这是三年多前的答案。。根据文件,它现在应该可以工作了。不过我自己还没试过。很抱歉问了这么无聊的问题,但是你把这个放在哪里了flag@IvanGenchev文档正在更新中。你能帮我更新一下答案吗?请你帮我在XCODE中设置这个标志?我把它添加到<代码>构建设置< /代码> ->其他C++标志并与我一起编译。
#ifdef __cplusplus
#include <opencv2/opencv.hpp>
#endif
#import <Availability.h>