Boost logo

Boost Users :

From: mahesh prabhu (prabhu.mahesh_at_[hidden])
Date: 2006-08-30 10:34:44


Hi,
     I'm new to Boost Serialization library . I wanted to use the library
for some of my full fledge so I thought I might as well test out the
features that the library documentation claimed it had . Many of the basic
features did work but some of the advanced features that I wanted most like
object tracking and serializing derived objects through a pointer to the
base class gave me some problems .

I faced the following two problems ( in order of decreasing priority ):

(1) Object Serialization : I have 4 pointers to 3 objects of the same class
, On deserializing these the pointers are mixed up . If while writing out
pointers 1 & 2 pointed to objects 1 and 2 , and pointers 3 and 4 pointed to
objects 1 and 3 then on restoration pointers 1 & 2 pointed to objects 1 & 2
but pointers 3 & 4 pointed to objects 2 and 3 instead of 1 and 3 .

(2) Writing derived objects through pointer to base class : This feature
worked if I did a registration through
ar.register_type(static_cast<gps_moreAcc1
*>(NULL)) but did not work if I did BOOST_CLASS_EXPORT( gps_moreAcc1) .
I get a "DoneAbort" message i.e a core dump .

I don't know too much about templates , so I was not able to debug the
problem .

I have attached a program which exhibit both problems , but the code that
causes the second problem is commented out . This can be reproduced by just
commenting out ar.register_type calls and uncommenting BOOST_CLASS_EXPORT
macros .
I have added more comments in the source file .

Please let me know if I am doing something wrong or if these are know
problems with the serialization library or if the serialization library
cannot be handled by serialization .

+Mahesh





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