宿主程序支持C++插件。 C++ dll 被编写为其插件。该插件将在启动时由主机程序初始化。
有什么方法可以使用 Python 在主机初始化 C++ dll 之后附加到它吗?
目的是将所有繁重的工作转移给 Python,因为它是一种熟悉的语言。
根据我的搜索,有ctypes,ctypes可以实现吗?或者我是否必须在 C++ dll 中嵌入 python 解释器?
最佳答案
您可以创建一个 C++ 插件,然后使用 boost::python 将功能委托(delegate)给您的 Python 代码(嵌入在插件中或文件系统中) 。
但是无论如何您都必须编写大量 C++ 代码。而且它不会是一种容易调试的类型。您必须将 C++ 与 Python 内存管理与您的插件架构所使用的内存管理连接起来。
不妨硬着头皮用 C++ 编写插件。社区支持也是需要考虑的因素。您可能不想成为唯一采用此架构的人。
关于c++ - Python 在由主机程序初始化后连接到 C++ dll?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18473093/