python - 如何将 c++ 类从 .dylib 或 dll 导出到 python 和其他语言
问题描述
我在 C++ 中创建了一个单例类并生成了一个库。对于操作系统,我如何使用 dll 或 dylib 将该单例类导出到 python 中。这个 dll 或 dylib 可以被任何 c++ 项目使用,但不能导出到其他语言。
正如我所观察到的,对于 c 函数,我们可以在函数声明后面添加 MACRO 并导出它。但是在这种情况下如何导出类,语法是什么?我们可以在 python 中使用 ctypes 来查找动态库。但是使用 ctypes 我只能导出函数而不能导出类,甚至不确定它的语法。
我用过
定义 LIBRARY_API extern "C"属性((visibility ("default")))
为 mac 和 linux 导出函数,对于我使用过的 windows 也是如此:
定义 LIBRARY_API extern "C" __declspec(dllexport)
但是使用这些我无法导出类。请任何人都可以对这些工作给出一个很好的解释,或者可以提供很好的链接来参考上述主题。
我已尽力解释我的疑问,请有人帮忙吗?
解决方案
推荐阅读
- r - 在 r 中跨多个时间段表整理一个唯一标识符
- python - 使用不同样式的线条呈现数据和缺失数据(Matplotlib,绘图)
- c++ - COM 客户端连接 COM 服务器需要哪些文件(进程外场景)?
- python - 将 HTML 数据转换为文本格式
- safari - 使用 Web Audio API webkitAudioContext() 在 Safari 中没有声音
- java - 优化代码以提高内存和速度
- spring-boot - 使用 Liquibase 和 JPA 实体生成变更日志
- database - 将数据互连以降低数据库查询的最佳方式 [通用,无特定语言]
- django - 唯一约束失败:更新用户信息时 auth_user.username
- asp.net - ASP.NET Core MVC 中 Layout.cshtml 中的访问请求或 IQueryCollection?