Boost logo

Boost Users :

Subject: Re: [Boost-users] [serialization] Serializing array of POD or custom type
From: Krzysztof Czainski (1czajnik_at_[hidden])
Date: 2012-06-26 03:56:11


2012/6/26 Kim Gadecki <gadecki_at_[hidden]>

> Hi everyone.
>
> I'm trying to work out how you serialize arrays using the boost
> serializer. Here's a simplified example:
>
> struct node_link
> {
> u32 node_A;
> u32 node_B;
> };
>
> struct Node {
> node_link* m_node_links_array;
> int m_node_links_size;
> };
>
> // non-intrusive serialization
> template<class Archive>
> void serialize(Archive & ar, node_link& link, const unsigned int
> version)
> {
> ar & link.node_A;
> ar & link.node_B;
> }
>
> template<class Archive>
> void serialize(Archive & ar, Node& node_data, const unsigned int
> version)
> {
> ar & boost::serialization::array<**node_link>(node_data.m_node_
> **links_array, node_data.m_node_links_size);
> ar & node_data.m_node_links_size;
> }
>

I'm guessing: how is deserialization of an array supposed to work, if size
is deserialized afterwords?

Regards
Kris



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