Boost logo

Boost :

From: Peter Dimov (pdimov_at_[hidden])
Date: 2002-03-01 09:20:21

From: "Vladimir Prus" <ghost_at_[hidden]>
> Peter Dimov wrote:
> > A single describe() method doesn't work for the following reasons:
> >
> > 1. const correctness.
> > 2. read/write assymetry.
> > 2a. sequence serialization:
> > 2b. versioning. When Complex version 1 is serialized as polar
> > but version 2 is cartesian, read/write are assymetric.
> 'describe' alone is clearly not enough. It is still usefull. In Jens' code
> is possible to overload 'save'/'load' functions to do whatever you like,
> they default implementation use 'describe'. I suspect that for many
> 'describe' will be sufficient, and I'd like to have it.

OK, but in

template<class RW> void describe(RW & rw, X & x)
    describe(rw, x.first);
    describe(rw, x.second);

you call describe() on x.first and x.second instead of read/write. What if
x.first is a std::vector<>?

Boost list run by bdawes at, gregod at, cpdaniel at, john at