在Python中调用返回对象引用的C++ DLL

2 投票
1 回答
1658 浏览
提问于 2025-04-16 21:25

经过一番研究,我决定提问。
我有一个C++的动态链接库(DLL),里面有一个导出的函数:ObjectType* getInstance()。
通过这个函数返回的实例,我可以访问所有其他的公共函数。

现在我的问题是,我想在Python中使用这个东西。当我用ctypes访问getInstance时,得到的只是一个整数值,而不是一个实例。
接下来我尝试写一个用C++编写的Python扩展,但这也没有成功。

有没有什么想法?

非常感谢你的帮助。

祝好。

1 个回答

0

根据我的了解,你不能直接从Python访问C++类型。你需要用一些(通常是很多)C或C++代码来包装它:这并不难,但确实需要一些时间。可以参考扩展和嵌入Python解释器

撰写回答