我正在嘗試將鱈魚國際象棋引擎與Swift中編寫的應用程序集成在一起。鱈魚iOS源代碼對所有人開放,但它是用Objective-C編寫的,引擎是用C++編寫的。我沒有Objective-C的問題,但似乎無法理解它將如何與Swift一起工作,並且完全可能。句柄引擎沒有文檔,我很難理解它將如何在Swift應用程序中構建,特別是當這是第一次讓我嘗試類似的東西時。其他人向我建議,我可以嘗試用椰子樹將發動機暴露在迅速,但我有點迷路了。如果任何人有任何建議,我會很棒。感謝您的時間!鱈魚與Swift iOS項目集成的國際象棋引擎集成
回答
你在這裏真正想要的是一個Swift實現Universal Chess Interface protocol,這樣任何兼容的引擎都可以與CocoaPods(或者Carthage,或者SPM,...)打包並且放入任何兼容的Swift應用中。那可能是那些建議你用CocoaPods嘗試的人所想的。
對於那些僅僅獲得一些用Swift鏈接的Objective-C代碼的不那麼雄心勃勃的任務,是的,這是絕對有可能的,你需要所謂的「Bridging Header」來將Objective-C代碼展示給Swift。完整的細節是在一個自由的書,你可以下載的iBooks:
Using Swift with Cocoa and Objective-C
該文檔也在線蘋果,here's a direct link到直接相關的部分:
要導入一套客觀-C文件與Swift代碼位於同一應用程序目標中,則您需要依賴Objective-C橋接頭將這些文件展示給Swift。 Xcode中提供當您添加斯威夫特文件到現有的Objective-C的應用程序,或者一個Objective-C文件到現有的斯威夫特應用創建這個頭文件......
這個過程通常只是作品™。如果沒有,搜索「橋接標題」,你應該找到很多適當的討論!
謝謝alexcurylo我在應用程序開發方面非常新,而且還沒有學到這一切!感謝您的建議,我會嘗試尋找任何有關UCI實施的幫助! – stan
- 1. Minimax與國際象棋引擎moveselection
- 2. 國際象棋棋盤代表 - 引擎
- 3. 國際象棋引擎中的滑塊生成
- 4. C中的國際象棋引擎
- 5. 使用Asp.net的國際象棋引擎
- 6. 使用FPGA的國際象棋引擎
- 7. 國際象棋引擎的深度是它的優勢嗎?
- 8. Python的國際象棋項目
- 9. 與XBoard(國際象棋引擎)通信(C++/C)
- 10. 國際象棋:獲得所有合法國際象棋棋子
- 11. 面向對象設計的國際象棋引擎
- 12. Facebook集成-ios + Swift
- 13. 用C++ GUI程序連接國際象棋引擎
- 14. 寫競技場gui的國際象棋引擎
- 15. 寫一個國際象棋引擎有什麼好的資源?
- 16. c或java中的國際象棋引擎,性能差異?
- 17. 如何整合Valil象棋引擎Unity3d國際象棋遊戲[C#]?
- 18. 在國際象棋比賽中成爲國王的地方
- 19. 爲什麼Faile比簡單國際象棋程序(TSCP)快得多? (國際象棋引擎優化)
- 20. 「跟隨國際象棋」直播國際象棋遊戲如何?
- 21. yaf與博客引擎2.0集成
- 22. 將Eventbrite與表達式引擎集成
- 23. 如何將Swift與Chartboost IOS SDK集成
- 24. Facebook與IOS集成
- 25. 國際象棋:主教與CLIPS移動
- 26. 與socket.io和uci玩國際象棋
- 27. 爪哇國際象棋
- 28. 國際象棋negamax功能
- 29. Java國際象棋桌
- 30. Lwuit 1.5 GUI Builder生成鱈魚文件
您是否閱讀過關於此事的官方文檔? https://developer.apple.com/library/ios/documentation/Swift/Conceptual/BuildingCocoaApps/你不明白哪部分? – Losiowaty
[可以在同一個Xcode項目中使用Swift,Objective-C,C和C++文件嗎?](http://stackoverflow.com/questions/32541268/can-i-have-swift-objective-cc-和-c-files-in-the-same-xcode-project) – Caleb
是的,我已經閱讀過,但是這個引擎使用C++和在問題中解釋的包裝器Caleb提到我不明白!但謝謝你回答我的問題! – stan