gpt4 book ai didi

c++ - 使用私有(private)数据 boost 类的序列化

转载 作者:太空宇宙 更新时间:2023-11-04 12:11:52 25 4
gpt4 key购买 nike

是否可以使用 Boost 序列化库以非侵入式方式序列化具有私有(private)数据但具有公共(public) get/set 方法的类。如果没有,是否有其他图书馆能够做到这一点?谢谢

最佳答案

如果必须的话,您可以反序列化/序列化为临时变量(存档不会神奇地知道被序列化到的变量是类的字段)。从 tutorial 改编序列化函数假设无法直接访问数据:

template<class Archive>
void serialize(Archive & ar, gps_position & g, const unsigned int version)
{
int degrees = g.getDegrees();
int minutes = g.getMinutes();
float seconds = g.getSeconds();

ar & degrees;
ar & minutes;
ar & seconds;

g.setDegrees(degrees);
g.setMinutes(minutes);
g.setSeconds(seconds);
}

关于c++ - 使用私有(private)数据 boost 类的序列化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9454307/

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