Boost logo

Boost Users :

From: Henrik Jacobsson (henrik.jacobsson_at_[hidden])
Date: 2005-05-10 04:56:10


Hi!

I want to serialize objects that link to each other through pointers, like a
linked list, but in this case a more complex graph with several different
classes and proxies (a graph which can contain loops and and null-pointers).

But I get the "pointer conflict" exception since the serialization discovers
that an object have been serialized once before through its pointer. The
contents should be serialized/deserialized only once, and then the pointers
should just be kept consistent.

An alternative is of course to replace all the pointers with indeces which are
memory-independent. But that's a messy affair.

In the copy constructor I solved something similar through a map<Type*,Type*>
which mapped from the old pointers to the newly allocated ones, so that they
could be properly replaced. Is something like this hidden somewhere in the lib?

Any suggestions?

Best regards,
Henrik Jacobsson


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