【发布时间】:2018-05-16 12:38:57
【问题描述】:
我有一个用标准函数反序列化的类:
template<class Archive> // public serialization (normal)
void serialize(Archive & ar)
{
ar(
cereal::make_nvp("parameter_1", parameter_1),
cereal::make_nvp("parameter_2", parameter_2),
cereal::make_nvp("parameter_3", parameter_3),
cereal::make_nvp("parameter_4", parameter_4),
cereal::make_nvp("parameter_5", parameter_5) );
}
但在我的情况下,parameter_4 和 parameter_5 是可选的。
它们可能在也可能不在输入 JSON 字符串中。
当我尝试反序列化此类缺少某些参数的不完整 JSON 时,我得到 Cereal “错误” - 无法找到那些缺少的参数。
有什么方法可以指定某些参数是可选的,并且在它们不属于 JSON 默认值的情况下将被使用?
【问题讨论】:
标签: c++ serialization cereal