#include #include #include #include struct A { int* content; int size; template void serialize(A& a, unsigned version) { a & size; boost::serialization::binary_object bo = boost::serialization::make_binary_object(content, sizeof(content)); a & bo; } }; using namespace boost::archive; using namespace boost::serialization; int main() { std::stringstream ss; A a1; a1.size = 10; a1.content = new int[10]; binary_oarchive oa(ss); oa << a1; A a2; binary_iarchive ia(ss); ia >> a2; return 0; }