为了账号安全,请及时绑定邮箱和手机立即绑定

我想通过带有 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 关注
  • 67 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
微信客服

购课补贴
联系客服咨询优惠详情

帮助反馈 APP下载

慕课网APP
您的移动学习伙伴

公众号

扫描二维码
关注慕课网微信公众号