|
Boost Users : |
From: Robert Ramey (ramey_at_[hidden])
Date: 2006-11-29 11:33:10
I just compiled, linked and ran the following program on my system:
vc 7.1
Boost 1.35 - HEAD
There was no need to explicitly instantiate anything.
Robert Ramey
#include <boost/serialization/string.hpp>
#include <boost/serialization/base_object.hpp>
#include <boost/serialization/utility.hpp>
#include <boost/serialization/version.hpp>
class CSerTest
{
std::string a_, b_, c_;
friend class boost::serialization::access;
template<class Archive>
void serialize( Archive & ar, const unsigned int );
public:
CSerTest();
};
BOOST_CLASS_VERSION(CSerTest, 1);
// Class.cpp
#include <boost/archive/xml_oarchive.hpp>
#include <boost/archive/xml_iarchive.hpp>
CSerTest::CSerTest() : a_("1"), b_("2"), c_("3")
{
}
template<class Archive>
void CSerTest::serialize( Archive & ar, const unsigned int )
{
ar & BOOST_SERIALIZATION_NVP(a_) & BOOST_SERIALIZATION_NVP(b_) &
BOOST_SERIALIZATION_NVP(c_);
}
// main.cpp
#include <fstream>
///////////////////////// without effect
////////////////////////////////////
//template void
CSerTest::serialize<boost::archive::xml_oarchive>(boost::archive::xml_oarchive&,
unsigned int );
int main()
{
const CSerTest instance;
std::ofstream ofs( "out_file.txt" );
boost::archive::xml_oarchive oxa( ofs );
oxa << BOOST_SERIALIZATION_NVP(instance);
}
Boost-users list run by williamkempf at hotmail.com, kalb at libertysoft.com, bjorn.karlsson at readsoft.com, gregod at cs.rpi.edu, wekempf at cox.net