#ifndef _DERIVED_CLASS_ #define _DERIVED_CLASS_ #include "BaseClass.h" class DerivedClass: public BaseClass { public: virtual ~DerivedClass() {} void setCom(int com); int getCom(); protected: DerivedClass(int id = 0, int com = 0) : BaseClass(id), m_com(com) {} virtual void what(); private: int m_com; friend class boost::serialization::access; template void serialize(Archive &archive, const unsigned int version) { what(); std::cout << "BOOST: I am in DerivedClass::serialize" << std::endl; archive & boost::serialization::base_object(*this) & m_com; } }; #endif // _DERIVED_CLASS_