【发布时间】:2012-05-16 14:32:22
【问题描述】:
我之前问过this question 如何使用boost::serialization::access 进行“版本化”序列化
我已经能够做一些我想做的事,但似乎有很大的限制。
具体来说,我希望能够在运行时更改版本并在代码中动态更改序列化版本。
然而,宏
BOOST_CLASS_VERSION(ClassName, ver)
似乎不允许这种行为。
我想我可以创建不同的类并在需要时使用它们,但我不希望这样做,因为这需要对我们进行大量代码更改。
有没有办法以编程方式更改类以在同一执行期间使用不同的版本?
更多解释一下我们需要做什么:
我尝试使用的用例是读取旧版本的程序(首次运行/升级时),然后使用新版本编写,然后也能够读取该新版本。
【问题讨论】:
-
@Hasturkun 是的,我有,但不允许在同一执行中使用不同的版本。
标签: c++ serialization boost