亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

我想通過帶有 C++ 和 Python 的插件創建一個可擴展的應用程序

我想通過帶有 C++ 和 Python 的插件創建一個可擴展的應用程序

絕地無雙 2022-07-26 10:42:48
我想創建一個可通過插件擴展的應用程序。我知道我有兩個選擇。我可以使用該語言的內置解釋器創建自己的解釋語言和應用程序。我可以使用其中一種現有語言,例如 Python、Lua 或其他腳本語言。我想使用選項 2。而且我知道我必須為外部語言創建一個層,以啟用該語言和我的應用程序之間的通信。但我不知道該怎么做。也許我必須使用進程間通信或類似的東西。假設我有一個用 C++ 編寫的應用程序。一開始,它甚至可能是一個顯示一些選項的簡單控制臺應用程序。我想用 Python 寫一個這樣的插件:option = "additional option" myApp.addOption(option)接著:我啟動我的應用程序我的應用加載插件我看到我的應用程序顯示了這個附加選項我想做這個簡單的事情來了解它是如何工作的,然后我將能夠做一些更復雜的事情。
查看完整描述

2 回答

?
子衿沉夜

TA貢獻1828條經驗 獲得超3個贊

您應該注意,可以從 C 程序調用 C++ 庫,主要是通過適當地使用extern "C"來禁用名稱修飾。在 Linux 上,另請閱讀C++ dlopen mini Howto。

然后你需要閱讀擴展和嵌入 Python 解釋器一章

最后,Python是開源的,所以請研究它的源代碼

我可以使用其中一種現有語言,例如 Python、Lua 或其他腳本語言。

我強烈建議考慮使用GNU Guile或擴展Ocaml

TensorFlowNumPy都可以激發您的靈感,因為它們是可從 Python 使用的開源庫(用 C 和/或 C++ 編碼)。


查看完整回答
反對 回復 2022-07-26
?
千萬里不及你

TA貢獻1784條經驗 獲得超9個贊

您可以先查看語言的文檔(如果您是新手):

Python --> https://docs.python.org/3/ Lua --> https://www.lua.org/docs.html

C++ 庫也可以在 C 中調用(如果你足夠小心的話),你也可以看看這個 https://www.teddy.ch/c++_library_in_c/


查看完整回答
反對 回復 2022-07-26
  • 2 回答
  • 0 關注
  • 66 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號