Lorsque vous utilisez la bibliothèque de sérialisation de Boost, vous pouvez appeler la sérialisation de la classe de base avec
ar & boost::serialization::base_object<> (*this);
selon la documentation. Je me demande cependant s'il est prudent de se passer de cela (je veux dire, pouvez-vous choisir ne pas sérialiser les données de la classe de base?)
Réponses:
1 pour la réponse № 1Vous pouvez choisir de ne pas sérialiser les données d'une classe de base, mais les variables membres sérialisées dans la classe de base ne seront ni enregistrées ni restaurées.
Cela peut convenir si vous souhaitez uniquement sérialiser la classe concrète avec laquelle vous travaillez et archiver manuellement toutes les variables dont vous avez besoin pour reconstruire votre instance de classe.
Mais pourquoi voudriez-vous? Cela suggère généralement que quelque chose ne va pas avec la structure de l'héritage ...