Swift编译器错误'iostream'找不到
我试图实现一个我在github上找到的项目。Swift编译器错误'iostream'找不到
https://github.com/hossamghareeb/Facebook-POP-Tutorial
当我执行h和.m文件我已经得到了这是说的XCode找不到我“的iostream”文件的错误。
我在SWIFT工作,使用桥接头来使用框架。当我尝试构建它的原始项目时,它总是失败。
如何添加我的iostream文件?
提前致谢!
Swift桥接不支持Objective C++文件。这意味着任何使用或暴露C++实体的头文件(如std::vector
; std::iostream
)都不能添加到桥头。
的POP桥接头包含:
#import "POP.h"
你真的应该只#import
该文件在您自己的桥接报头,而不是试图#import
所有.h
文件。
如果您需要使用一些未在Objective C或纯C头文件中公开的.mm
文件中定义的API,那么您必须制作自己的头文件(可能为后端实现你已经暴露的)。
您可以在Swift使用的库中使用.mm
文件的原因是因为所有的swift使用都是这些文件的接口 - 即.h
文件,只要这些文件使用纯C或Objective C ,那么你可以使用在.mm
文件中实现的代码。目标C++编译器编译.mm
文件(clang++
)
谢谢,经过大量的诅咒和DuckDuckGoing你的答案是让我明白为什么我不能在我的情况下使用Objective-C++头(因为他们导入C++头)。 – 2016-08-16 06:42:42
这些文件是Objective C++,而不是Objective C。我不认为快速桥接可以与Objective C++头文件一起使用。 – Petesh 2015-04-01 15:42:17
有没有可能导入这些客观的C++文件? – 2015-04-01 20:35:54