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 - Python-OpenCV清除模糊的图像

python - 在 python 中使用 Sin-1 或逆 sin

c++ - 输出流运算符的重载

java - 反序列化 MongoDB BSON

Python:当只有方法的字符串名称时如何调用方法?

python - 如何使用适用于 x86_64 系统的精选 TensorFlow ops 构建 TensorFlow lite?

python - 使用模拟来修补不存在的属性

c++ - 在另一个对象类中的 vector 中调用对象类方法

c++ - 关于无锁编程的一些疑惑

C++ 以独立于平台的方式序列化和压缩 vector<structs>