包括C++;将目标C纳入Swift框架 我试图构建一个快速框架,包括iOS/P>的C++和OpenCV框架

包括C++;将目标C纳入Swift框架 我试图构建一个快速框架,包括iOS/P>的C++和OpenCV框架,c++,ios,objective-c,swift,C++,Ios,Objective C,Swift,据我所知,我们不能在框架中使用桥接头,我们必须处理伞形头 我的问题是XCODEL不是C++ C++文件,而是编译器错误: 未知类型名称“class”;你是说“班级”吗? 它也找不到 我现在有我的伞,它包括一个Objc包装器用于我的C++文件。 正确的方法是什么 在我的框架伞头下面 #ifdef_uuobjc__ #进口 #进口 #否则 #ifndef基金会 #如果已定义(uuu cplusplus) #包括 #定义基础\导出外部“C” #否则 #定义基础导出外部 #恩迪夫 #恩迪夫 #恩迪夫 #

据我所知,我们不能在框架中使用桥接头,我们必须处理伞形头

我的问题是XCODEL不是C++ C++文件,而是编译器错误:
未知类型名称“class”;你是说“班级”吗?
它也找不到

我现在有我的伞,它包括一个Objc包装器用于我的C++文件。 正确的方法是什么

在我的框架伞头下面

#ifdef_uuobjc__
#进口
#进口
#否则
#ifndef基金会
#如果已定义(uuu cplusplus)
#包括
#定义基础\导出外部“C”
#否则
#定义基础导出外部
#恩迪夫
#恩迪夫
#恩迪夫
#导入“AGImageDescriptor.h”
#导入“AGKitLib.h”
#导入“Detector.h”
#导入“可观察的.h”
#导入“Shooter.h”
#导入“DocumentDetectedState.hpp”
#导入“DocumentMatchState.hpp”
#导入“GoodPerspectiveState.hpp”
#导入“GoodPositionState.hpp”
#导入“InactiveState.h”
#导入“ReadyState.hpp”
#导入“StartState.h”
#导入“State.h”
#输入“States.h”
#导入“TextDetectedState.hpp”
#导入“Tools.hpp”
#导入“OpenCVWrapper.h”
#导入“UIImage+OpenCV.h”
基金会\出口双AGKitScanVersionNumber;
基础_导出常量无符号字符AGKitScanVersionString[];

<>我不是C++专家,也不是C专家,所以我可能在这里漏掉了一些东西。

< P>你所得到的错误表明你的伞头可能直接或间接地包含C++代码。事实上,我看到了很多<>代码> HPP文件,它们可能是C++标题。由于框架中存在Swift代码,您无法做到这一点。所有C++代码必须局限于ObjtoVC++封装器的实现文件( mm > /COD>扩展,而不是<代码> .M< /COD>用于Objto-C文件)。Objest-C++(.Mm)文件可以使用C++和ObjuleC代码混合,并包含必要的C++标题。
以下是一些可能会有所帮助的问题/答案:

很抱歉回复太晚。这对我有很大帮助:确实,每个C++文件都应该在伞头中声明。谢谢@阿克胡:你能用最终的伞头细节更新你的问题吗。我也在尝试做同样的事情,但从来没有听说过伞头,所以我不知道这甚至需要去哪里。谢谢
#ifdef __OBJC__
    #import <UIKit/UIKit.h>
    #import <Foundation/Foundation.h>
#else
    #ifndef FOUNDATION_EXPORT
        #if defined(__cplusplus)
            #include <iostream>
            #define FOUNDATION_EXPORT extern "C"
        #else
            #define FOUNDATION_EXPORT extern
        #endif
    #endif
#endif

#import "AGImageDescriptor.h"
#import "AGKitLib.h"
#import "Detector.h"
#import "Observable.h"
#import "Shooter.h"
#import "DocumentDetectedState.hpp"
#import "DocumentMatchState.hpp"
#import "GoodPerspectiveState.hpp"
#import "GoodPositionState.hpp"
#import "InactiveState.h"
#import "ReadyState.hpp"
#import "StartState.h"
#import "State.h"
#import "States.h"
#import "TextDetectedState.hpp"
#import "Tools.hpp"
#import "OpenCVWrapper.h"
#import "UIImage+OpenCV.h"

FOUNDATION_EXPORT double AGKitScanVersionNumber;
FOUNDATION_EXPORT const unsigned char AGKitScanVersionString[];