gpt4 book ai didi

boost - 更改代码以不使用 boost 中的命名空间

转载 作者:行者123 更新时间:2023-12-04 17:01:21 26 4
gpt4 key购买 nike

namespace boost { namespace serialization {
template<class Archive>
void save(Archive & ar, const my_class & t, unsigned int version)
{
....
}
template<class Archive>
void load(Archive & ar, my_class & t, unsigned int version)
{
....
}
}}

我需要在类中使用此代码,但由于命名空间而出现错误。有什么帮助吗?来自文档: https://www.boost.org/doc/libs/1_47_0/libs/serialization/doc/serialization.html#splittingfreefunctions

提前致谢!

最佳答案

您将侵入式序列化(成员函数)与非侵入式(自由函数)混淆了。

您发布的咖啡是免费功能(例如,当您无法将序列化代码添加到类(它可能来自第三方 header )时,可以使用它。

在类定义中,您应该采用成员函数方法:https://www.boost.org/doc/libs/1_72_0/libs/serialization/doc/serialization.html#member

如果您还需要拆分保存/加载函数,您也可以将其作为成员函数执行:https://www.boost.org/doc/libs/1_72_0/libs/serialization/doc/serialization.html#splittingmemberfunctions

关于boost - 更改代码以不使用 boost 中的命名空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60927719/

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