Boost序列化数据标准 我想用Boost C++中的对象序列化一个对象,然后从C程序中反序列化它。因此,我想自己编写反序列化部分(我不会处理复杂的结构)。这可能吗?我在哪里可以找到Boost使用的序列化协议?

Boost序列化数据标准 我想用Boost C++中的对象序列化一个对象,然后从C程序中反序列化它。因此,我想自己编写反序列化部分(我不会处理复杂的结构)。这可能吗?我在哪里可以找到Boost使用的序列化协议?,c++,serialization,boost,C++,Serialization,Boost,正如评论员所说,协议缓冲区在设计上被指定为可互操作的格式。我建议使用它(或具有类似功能的现有序列化库之一) 除此之外,您还可以考虑实现您自己的归档格式,这样您就可以密切控制序列化方式 请注意,如果您的对象图非常复杂,您将需要提出某种两端都能工作的对象跟踪实现。这可能是一个自定义归档实施无效的领域 开箱思考 如果使用微软Visual C++编译器(因为您也使用C…),则应该考虑使用BooSooLoad来读取C++对象图并在混合模式程序集中转换为CLR类型: C++/CLI ➣尚未检查。源代码

正如评论员所说,协议缓冲区在设计上被指定为可互操作的格式。我建议使用它(或具有类似功能的现有序列化库之一)

除此之外,您还可以考虑实现您自己的归档格式,这样您就可以密切控制序列化方式

请注意,如果您的对象图非常复杂,您将需要提出某种两端都能工作的对象跟踪实现。这可能是一个自定义归档实施无效的领域


开箱思考

如果使用微软Visual C++编译器(因为您也使用C…),则应该考虑使用BooSooLoad来读取C++对象图并在混合模式程序集中转换为CLR类型:

  • C++/CLI

➣尚未检查。

源代码中提供了Boost。在这里,您可以很容易地看到协议:)从源代码中读取它们要困难得多。如果有相关的文档,那就容易多了。不过,如果我找不到,这将是唯一的解决办法。感谢并不是你的问题的答案,但是你应该考虑使用谷歌的协议缓冲区来代替。我已经很长时间没有研究Boost Serialize了,但几年前它只是一个用于此类目的的错误库。