Saving and Restoring an Object by Pointer
The previous example supports only streaming objects as values. To support streaming objects as pointers requires additional changes.