Swift和Objective-C ++互操作性

时间:2015-03-05 23:46:48

标签: c++ objective-c swift interop objective-c++

我有一个C ++ API,我需要在Swift项目中进行交互。我直接知道cannot interact with C++ from Swift,但我知道我可以通过Objective-C包装器来做到这一点。这很清楚。

然而,如果Swift和Objective-C ++可以相互交互,我找不到任何地方。考虑到API的复杂性,如果可能的话,我想用Objective-C ++编写C ++包装器。有谁知道Objective-C ++和Swift是否可以互操作?

2 个答案:

答案 0 :(得分:1)

我不明白他们为什么不这样做,因为Objective-C ++基本上是Objective-C。您可能必须(在任何情况下都希望)将C ++对象指针隐藏为实现文件中的私有属性,但除此之外不应存在任何问题。

显然你必须完全提取/抽象C ++对象。

答案 1 :(得分:0)

Swift和objective-c ++无法互动。只要swift编译器使用的objective-c桥接头中有c ++代码,就会出现编译错误。 您需要完全隐藏纯c或纯Objective-c API背后的c ++代码。