首页 > 解决方案 > 每次我进行继承时都需要 boost::serialization::base_object 吗?

问题描述

我有:

  1. 我需要serialize在类中使用函数BCserialize在其中发挥作用,B正是C这样:

     template<typename Archive>
     void serialize(Archive& ar, const unsigned int version)
     {
         ar & boost::serialization::base_object<A>(*this);
     }
    
  2. 我是否应该在文档中对此进行一些注释?

标签: c++boostboost-serialization

解决方案


不,如果您不想从基础序列化数据,您可能不需要它。

但是,在多态层次结构中,如果只是告诉存档有关已注册类型的信息,您确实需要它。

https://www.boost.org/doc/libs/1_73_0/libs/serialization/doc/serialization.html

见这里有很多例子:https ://stackoverflow.com/a/35756430/85371


推荐阅读