Boost logo

Boost Users :

From: gast128 (gast128_at_[hidden])
Date: 2007-08-13 16:32:47


Robert Ramey <ramey <at> rrsd.com> writes:

>
> if you want to suppress object tracking for a particular class
>
> BOOST_CLASS_TRACKING(SomeStruct, boost::serialization::track_never)
>
> as described in the manual Reference/Special Considerations/Object
> Tracking.
>
> Of course you must realized that if you do this and you serialize pointers
> you're
> exposed to the risk that when you load the archive multiple pointers to
> a unique object you're not going to the same thing when you load it. Your
> going to get each pointer pointing to a different (and new object).

Thx for the answer. My point is that if you nowhere specify a load/store
through pointer, the following code stores just multiple copies:

for (int i = 0; i < 100; ++i)
{
   const SomeStruct s;
   oa << s;
}

but this behavior seems to change if somewhere a store through is performed.
This was for my surprising.


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