提升序列化数据标准

时间:2015-10-16 14:37:47

标签: c++ serialization boost

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

1 个答案:

答案 0 :(得分:1)

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

除此之外,您可以查看实现自己的归档格式,以便您可以密切控制序列化的内容。

请注意,如果您的对象图非常复杂,您将需要提出某种适用于两端的对象跟踪实现。这可能是自定义Archive实现无效的区域¹

开箱即用,思考

如果您使用的是Microsoft Visual C ++编译器(因为您也使用C#...),您应该考虑使用Boost Serialization来读取C ++对象图并转换为混合模式程序集中的CLR类型:

¹没有检查过。