mirror of
https://github.com/boostorg/serialization.git
synced 2026-01-22 05:42:17 +00:00
2. created copy of original throw exception for use in the serialization Library.vcproj 3. addressed error maintenance of static type table which shows up on GCC 4. fixed internal names in xml_grammar so as not to conflict with likely preprocessor macros. 5. streamlined xml_grammar so as not to depend upon on non-thread safe component. [SVN r48575]
52 lines
1.2 KiB
C++
52 lines
1.2 KiB
C++
/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
|
|
// test_private_ctor.cpp
|
|
|
|
// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com .
|
|
// Use, modification and distribution is subject to the Boost Software
|
|
// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
|
|
// http://www.boost.org/LICENSE_1_0.txt)
|
|
|
|
#include <sstream>
|
|
|
|
#include "test_tools.hpp"
|
|
|
|
#include <boost/serialization/vector.hpp>
|
|
|
|
#include <boost/archive/text_iarchive.hpp>
|
|
#include <boost/archive/text_oarchive.hpp>
|
|
|
|
class V {
|
|
friend int test_main(int /* argc */, char * /* argv */[]);
|
|
friend class boost::serialization::access;
|
|
int m_i;
|
|
V() :
|
|
m_i(0)
|
|
{}
|
|
~V(){}
|
|
template<class Archive>
|
|
void serialize(Archive& ar, unsigned version)
|
|
{
|
|
ar & m_i;
|
|
}
|
|
bool operator==(const V & v) const {
|
|
return m_i == v.m_i;
|
|
}
|
|
};
|
|
|
|
int test_main(int /* argc */, char * /* argv */[])
|
|
{
|
|
std::stringstream ss;
|
|
const V v;
|
|
{
|
|
boost::archive::text_oarchive oa(ss);
|
|
oa << v;
|
|
}
|
|
V v1;
|
|
{
|
|
boost::archive::text_iarchive ia(ss);
|
|
ia >> v1;
|
|
}
|
|
BOOST_CHECK(v == v1);
|
|
return EXIT_SUCCESS;
|
|
}
|