Xcode 8,Swift和C ++

4
目前我所了解的是,使用XCode 7.3和Swift 2.2创建一个不需要Objective C的C++和Swift项目并没有优雅的方法。 我可以混合使用Swift和C++吗?就像Objective-C的.mm文件一样 我记得在某个地方看到过,苹果公司的目标是提供一个解决方案,以消除这个要求。
我已经查看了一些WWDC2016会议,但尚未看到相关内容。
有人发现Xcode或Swift有任何改变,将简化C++处理吗?
我要求提供一个讨论此问题的链接或会话。
我不确定回答这个问题时NDA的范围,但我想发布一个链接应该是安全的。

你仍然无法直接从Swift桥接到C++。你必须将C++封装在Objective-C中或使用Objective-C++。我参加了WWDC,没有关于C++与Swift的互操作性的消息。我不确定这个问题是否应该被关闭为您链接到的重复问题,因为它询问相同的问题,尽管使用了不同的工具版本。 - JAL
这是一个重复的问题,但我们被承诺会有新的解决方案(尽管我不记得在哪里听说过)。对于重复的问题,一旦答案可能因为新版本而改变,我从来没有清楚的了解到提问的程序。 - Ryan Heitner
根据simpleBob提供的信息,SE-0038是一个提案,尚未在软件包管理器中实现,它将允许软件包管理器包含C语言系列。 - Ryan Heitner
好的。如果有必要的话,这应该是一个评论或者关于链接问题的答案。 - JAL
我将在问题中添加到SE-0038的链接并设置Google警报,至少我有了这个问题的名称。欢迎您将其关闭为重复。 - Ryan Heitner
1个回答

1

您可以在这里查看下一步的更改。

但我认为导入ObjectiveC++包并不会像导入Swift包那样容易。因为,与ObjectiveC++不同,Swift不是C++的超集。


这是我从你提供的链接中寻找的参考资料 https://github.com/apple/swift-evolution/blob/master/proposals/0038-swiftpm-c-language-targets.md 。它在已被接受但尚未完全实现的提案下。 - Ryan Heitner
@RyanHeitner 那个链接讨论的是向软件包管理器添加对“外部”软件包的支持,而不是关于语言之间的互操作性。 - molbdnilo
@molbdnilo 我的理解是,如果你有一个“外部包”,那么就意味着必须有一种与之交流的方式。 - Ryan Heitner
2
@RyanHeitner 引用自讨论:"这个提案不是关于混合 Swift-C++ 代码的。它是关于允许一个 Swift 包依赖和构建一个纯 C/C++ 模块的。" - molbdnilo
@molbdnilo 很好的发现!我想我只能等待并看看他们是否会实施另一个提案来帮助解决问题。 - Ryan Heitner
有没有关于Xcode 8中应该期望哪个版本的C++的消息?每次升级Xcode都是一个紧张的时刻。苹果似乎不理解向后兼容性的概念。 - Richard Hodges

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接