Chapter 2. Rationale

Serialization is the process of converting program data into a form that can be saved to persistent storage and later converting the stored data back into program data. This process is also referred to as persistence, since it moves data to and from persistent storage. Persistent storage is a data store that will hold the data even after the program exits or stops executing, or even if the computer is powered off. C++ does not have a serialization facility, so programmers have to either write their own serialization code or use a library.

There are several libraries that already provide serialization services, so you may be asking "why was this library created?" The main reasons are: