boost::serialization v1.59 和 v1.60 之间的存档版本

boost::serialization archive versions between v1.59 and v1.60

在 boost::serialization 中有没有办法告诉 Serialization/Archives 使用特定的存档版本(如 https://github.com/boostorg/serialization/blob/boost-1.60.0/src/basic_archive.cpp)?

我们 运行 遇到了一个问题,即客户端现在是使用 Boost 1.60 构建和交付的,而服务器仍然是 1.59。客户端现在发送 14 的存档版本,而服务器只知道 13。因此抛出一个"unsupported version"。为了避免在服务器上更新 boost 的麻烦:我们可以告诉客户端使用旧的存档版本 13?

当我们从 XML 存档切换到 PortableTextArchives 时,看起来这才开始困扰我们(对于相同的提升版本,它似乎只能跨平台移植...)。

提前致谢!

使用 v13 的唯一方法是编译并 link 到使用它的 boost 版本。

所以,只有向前兼容,没有向后兼容。实际上,您总是希望确保服务器版本领先于在任何给定时间部署的任何客户端。

可移植性是不同的 "axis" 可以这么说。目标略有不同,因此与缺乏向后兼容的版本控制没有真正的冲突。