python - 将 C++ 类序列化为文件,然后在 Python 中进行基于事件的反序列​​化?

标签 python c++ serialization swig ramdisk

我有一个改变复杂对象的函数的 C++ 源代码。如果没有逆向工程或以其他方式研究它的类,我如何将它序列化为一个文件(可能在已安装的 ramdisk 上),然后在 Python 中轻松反序列化它?我需要 Swig 才能执行此操作吗?

我只想在 C++ 源代码中添加一两行代码(在对象发生变化之后),每次更新文件时生成一个 Linux 用户信号或其他东西,并为该自定义信号安装一个 Python 处理程序反序列化文件并对对象执行某些操作。

也欢迎使用更简单的跨语言、跨进程技术来实现这一点。

最佳答案

您可以使用 protobuf在 C++ 中保存复杂数据并在 python 中读取它。这两种语言都有库,并且由于 protobuf 足够流行,您很容易找到有关其使用的帮助。

关于python - 将 C++ 类序列化为文件,然后在 Python 中进行基于事件的反序列​​化?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33601647/

相关文章:

python - "Failed to execute script "pyinstaller

python - 同时按行和列降序对 Dataframe 进行排序

c# - 如何自动将 const wchar_t* 从 C DLL 转换为 C# 字符串

java - 序列化和反序列化中类的层次结构

python - xmlschema 元素不是架构的元素

python - 从 python cgi 访问数据库

c++ - 使用 MKL 稀疏矩阵 vector 相乘

c++ - 将项目从一个 vector 复制到另一个 vector

c# - 强制 protobuf-net 忽略 IEnumerable/ICollection 接口(interface)

java - 使用Java序列化来保存对象