回答
要回答我的問題部分:
Luabind:一旦你知道如何通過這種尷尬的模板語法結合的方法和類,它是非常簡單和方便地添加新的綁定。但是,luabind會對性能產生重大影響,因此不應將其用於實時應用程序。比調用直接操縱堆棧的C函數大5-20倍的開銷。
我沒有使用任何庫。我前段時間曾使用SWIG公開C庫,但開銷太大,我停止使用它。
優點是性能更好,控制更好,但它需要更多時間來編寫。
使用原始Lua API進行綁定 - 並保持簡單。從Lua作者的API本身(AUX庫)和庫中獲取靈感。
在一些實踐中,原始API是最好的選擇 - 最大的靈活性和最少的不需要的開銷。你已經擁有了你想要的東西,而不再是你需要的東西。
如果您必須綁定大型第三方庫,請使用tolua,tolua ++等自動生成器(或者甚至是針對特定情況推出自己的產品)。它可以讓你免去手動工作。
我不會推薦使用Luabind。目前它的發展陷入停滯(不過開始恢復生機),如果你遇到一些特殊情況,你可能會自己做。 Luabind也大量使用模板元編程。這可能(也可能不)不可接受,這取決於觀點。
我真的不能與「滾你自己的」投票,結合基本類型和靜態C函數到Lua是微不足道的,是的,但情況發生了變化,你開始處理表和元表的那一刻達成一致;事情變得非常迅速。
LuaBind似乎做的工作,但我有一個哲學問題。對我來說,好像你的類型已經很複雜了,Luabind模板化程度很高的事實並不會讓你的代碼更容易遵循,正如我的一位朋友所說:「你需要Herb Shutter來找出編譯信息」 。加上它取決於升壓,加上編譯時間受到嚴重打擊等。
嘗試幾個綁定後,Tolua ++似乎是最好的。 Tolua看起來並沒有太多的發展,Tolua ++似乎工作得很好(另外一半'Tolua'教程實際上是'Tolua ++'教程,請相信我:) Tolua確實生成了正確的東西,源可以修改,它似乎處理複雜的案件(如模板,工會,無名結構等,等)
Tolua ++最大的問題似乎是缺乏適當的教程,預先設置的視覺Studio項目,或者命令行有點棘手的事實(你的路徑/文件至少在Windows中不能有空格 - 等等)。對我而言,它是贏家。
- 1. 如何將從代碼粘貼到Emacs的代碼從StackOverflow
- 2. PasteBin API無法將代碼粘貼到'&'
- 3. 如何將xml粘貼到C++(Tinyxml)
- 4. PHPstorm代碼粘貼縮進
- 5. 粘貼特殊代碼
- 6. 將DataObject粘貼到Word中C#
- 7. 如何將JDialog粘貼到JFrame?
- 8. Visual Studio:將代碼粘貼到HTML時保留語法着色
- 9. 將代碼粘貼到Mac OS X上的vim終端窗口
- 10. 將代碼複製並粘貼到Python解釋器
- 11. C#數據粘貼到ExternalProcess
- 12. 粘貼字體粘貼到剪貼板
- 13. 如何粘貼到終端?
- 14. 如何從剪貼板粘貼到硒
- 15. 將.htaccess代碼粘貼到WordPress htaccess代碼的上方或下方?
- 16. 如何啓用將密碼粘貼到NSSecureTextField中?
- 17. 如何將XAMLstring更改爲XMAL代碼以粘貼到WPF中的RichTextBox中?
- 18. 如何將源代碼粘貼到vim而沒有錯誤格式?
- 19. 如何將Excel中的多行粘貼到C#中的DataGridView中?
- 20. 如何將一個字節數組粘貼到文件c#中?
- 21. 將變量粘貼到$ _GET
- 22. 將圖像粘貼到JEditorpane
- 23. 將ID粘貼到href中
- 24. 將Excel粘貼到網頁
- 25. 將HTML粘貼到IE8中
- 26. NSTextView粘貼:當粘貼「foo」時,如何粘貼「bar」?
- 27. C#將剪貼板內容粘貼到Excel工作表
- 28. C#Word Interop,將剪貼板粘貼到段落
- 29. 自定義鍵盤:如何將圖像從粘貼板粘貼到messages.app MMS ios8
- 30. 如何將HTML粘貼到使用GTK +剪貼板的
upps ... corrected :) – steffenj 2008-10-06 19:02:52
有一些關於此主題的討論[這裏](http://stackoverflow.com/questions/63784/implementing-scripts-in-c-app#63865)。 – Mark 2008-09-19 16:16:15