$include_dir="/home/hyper-archives/boost/include"; include("$include_dir/msg-header.inc") ?>
From: Robert Ramey (ramey_at_[hidden])
Date: 2003-10-13 13:58:45
David Abrahams wrote:
>What if there's just no default constructor, private or otherwise?
Currently you would have to overload:
template<class Archive, class T>
void load(Archive &ar, T * &t, unsigned int version)
...
for the specifice collection with something like
template<class Archive>
void load(Archive &ar, vector<A> &va, unsigned int version){
unsigned int size;
va.clear();
ar >> size;
while(size-- > 0){
int i;
ar >> i;
A a(i);
ar >> a;
va.pushback(a);
}
}
That is the current default implementation of collection serializaton presumes
the existence of a default constructor for the element. If this isn't true
then the default implementation won't work and you'll have to make your
own override.
Robert Ramey