Boost logo

Boost Users :

From: Thomas Voigt (spock_at_[hidden])
Date: 2008-06-09 18:39:09


I tried to use boost serializing for a std::set. The serializing itself
works fine, however, after implementing the serialization the compiler
started to generate a .exp and a .lib file, even though the application
is no DLL.

Since the application is large and generating those files takes some
time I tracked down the reason, and was surprised to realize that it was
the serialization that triggered it. More precisely, the .lib and .exp
will be generated if (and only if) I include the 4 lines of code calling
the serialization.

Any ideas? Boost version is 1.35, Visual Studio 2005 english SP1 on WinXP.

Here is the sample (the part that loads the data, the writing part is

         std::istringstream iss(serialized_string);
         boost::archive::text_iarchive ia(iss);
         ia >> *myclass;

where myclass is a shared pointer to a class that looks basically like this:

class foo {
         std::set<SomeClass> _members;
         std::string _name;

         template<class Archive>
         void serialize(Archive& ar, const unsigned int version)
             { ar & _name; ar & _members; }

with a custom serialization routine for SomeClass.

Any help is appreciated. If there is a mailing list better suited for
this discussion then please point me there, I'm new here :-)

Regards, Thomas

Boost-users list run by williamkempf at, kalb at, bjorn.karlsson at, gregod at, wekempf at