
[sorry for breaking the threading, just re-joined the list]
We have system data written out to an XML archive and being de-serialized at application startup.
One object type in the archive we written at version 1 by a newer version of the application. We then ran an older version of the software which only understood version 0 of the object.
Hi Russel, To handle different versions of data you should split serialize() into separate save()/load() functions as described in the tutorial: http://boost.org/libs/serialization/doc/tutorial.html#splitting The implementation will look something like: void save(...) { // Serialize all data here } void load(Archive & ar, unsigned int version) { if (version > 0) { // Load data added in version 1 } if (version > 1) { // Load data added in version 2 } // Load version 0 data } Regards, -- Tarjei