gpt4 book ai didi

ios - Stockfish Chess Engine 与 Swift 中的 iOS 项目集成

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:00:22 26 4
gpt4 key购买 nike

我正在尝试将 Stockfish Chess Engine 与一个用 Swift 编写的应用集成。 Stockfish iOS 源代码对所有人开放,但它是用 Objective-C 编写的,引擎是用 C++ 编写的。我对 objective-c 没有任何问题,但似乎无法理解它如何与 Swift 一起工作,这是否可能。 Stockfish 引擎没有文档,我很难理解它将如何在 Swift 应用程序中构建,尤其是当这是我第一次尝试类似的东西时。其他人向我建议我可以尝试使用 cocoapods 将引擎暴露在 swift 中,但我在这里有点迷路。如果有人对我有任何建议,那就太好了。感谢您的宝贵时间!

最佳答案

这里您真正想要的是 Universal Chess Interface protocol 的 Swift 实现这样任何兼容的引擎都可以与 CocoaPods(或 Carthage,或 SPM,......)打包并放入任何兼容的 Swift 应用程序中。那些建议您尝试使用 CocoaPods 的人可能就是这么想的。

对于仅让一些 Objective-C 代码与 Swift 链接的不太雄心勃勃的任务,是的,这绝对是可能的,您需要所谓的“桥接 header ”来将 Objective-C 代码公开给 Swift。完整的详细信息在一本免费的书中,您可以下载到 iBooks:

Using Swift with Cocoa and Objective-C

此文档也在 Apple 在线提供,here's a direct link到直接相关的部分:

To import a set of Objective-C files in the same app target as your Swift code, you rely on an Objective-C bridging header to expose those files to Swift. Xcode offers to create this header file when you add a Swift file to an existing Objective-C app, or an Objective-C file to an existing Swift app...

这个过程通常 Just Works™。如果没有,请搜索“桥接头”,您应该会找到很多合适的讨论!

关于ios - Stockfish Chess Engine 与 Swift 中的 iOS 项目集成,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37253950/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com