Re: [Boost-users] Problem using serialization::xml_archive withpolymrphic classes

Thanks for reply, All classes a, b, c and d are actually defined within one dll (one module). I forgot to mention it. I can do this following thing: d* pD = mew d(); and then ar & boost::serialization::make_nvp("item", pD); but c* pD = new D(); ar & boost::serialization::make_nvp("item", pD); does not work at all! It throws this strange type of exceptions which I cannot handle at all. Another problem is that if I do the first version the member m_key variable of true_type in the call const boost::serialization::extended_type_info * true_type = i.get_derived_extended_type_info(t); is a null pointer which is not right. Do you have any idea what could be wrong? Thanks a lot for help ___________________________________________________________ This e-mail may contain confidential and/or privileged information. If you are not the intended recipient (or have received this e-mail in error) please notify the sender immediately and delete this e-mail. Any unauthorised copying, disclosure or distribution of the material in this e-mail is prohibited. Please refer to http://www.bnpparibas.co.uk/en/information/legal_information.asp?Code=ECAS-8... for additional disclosures.

przemyslaw.sliwa@uk.bnpparibas.com wrote:
Thanks for reply,
All classes a, b, c and d are actually defined within one dll (one module). I forgot to mention it. I can do this following thing:
d* pD = mew d();
and then ar & boost::serialization::make_nvp("item", pD);
but c* pD = new D(); ar & boost::serialization::make_nvp("item", pD);
does not work at all! It throws this strange type of exceptions which I cannot handle at all.
This should work if d is exported BOOST_SERIALIZATION_EXPORT(d)
Another problem is that if I do the first version the member m_key variable of true_type in the call
const boost::serialization::extended_type_info * true_type = i.get_derived_extended_type_info(t);
again This should work if d is exported BOOST_SERIALIZATION_EXPORT(d) Robert Ramey
participants (2)
-
przemyslaw.sliwa@uk.bnpparibas.com
-
Robert Ramey