The Serialization Package
Introducing the Serialization Package
The Serialization package provides a way to flatten objects, so they can be easily transported across communication boundaries or stored to disk. This object serialization mechanism includes two processes:
Translation of an object or set of related objects in memory into a linear series of atomic events or tokens
Translation of such a series back into an equivalent object or set of related objects
The classes, macros, and functions in the Serialization package help you to define serializable objects with a minimum of custom code, while retaining control over the formats and policies used. To make your C++ classes serializable, you prepare them with a small set of streaming macros. These macros encapsulate the details associated with streaming protocols, shielding your application from the implementation details but otherwise not affecting your application code. You have a choice of intrusive serialization for your own classes or external serialization for classes that you can’t modify, such as classes from a third-party library. The package also includes a set of utility functions for streaming objects to and from various formats.