gpt4 book ai didi

c++ - C++ 11 Cereal 序列化-版本控制

转载 作者:行者123 更新时间:2023-12-03 07:23:27 32 4
gpt4 key购买 nike

我已经成功地序列化了类的两个成员。

    archive(
cereal::make_nvp("width", m_width),
cereal::make_nvp("height", m_height),
);

现在,在更高版本中,我的代码包含更多成员,我也想将其归档:

    archive(
cereal::make_nvp("width", m_width),
cereal::make_nvp("height", m_height),
cereal::make_nvp("lambda0", m_lambda0),
cereal::make_nvp("phi1", m_phi1)
);

但是,这会崩溃,因为新成员不在旧文件中。据我所知,没有办法在 make_nvp中为这些变量定义默认值。

但是一定要有某种版本控制才能解决这种默认情况?有人可以指出我的文档,甚至可以引用一些示例代码吗?我在官方 website上找不到任何东西。 (但很可能我只是盲目..)

最佳答案

供将来引用-这里记录了如何版本化:

https://uscilab.github.io/cereal/serialization_functions.html#versioning

关于c++ - C++ 11 Cereal 序列化-版本控制,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62040361/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com