Chapter 17Storing and Printing Documents

  • How serialization works
  • How to make objects of a class serializable
  • The role of a CArchive object in serialization
  • How to implement serialization in your own classes
  • How to implement serialization in the Sketcher application
  • How printing works with MFC
  • Which view class functions support printing
  • What a CPrintInfo object contains and how it’s used in the printing process
  • How to implement multipage printing in Sketcher

You can find the wrox.com code downloads for this chapter on the Download Code tab at www.wrox.com/go/beginningvisualc. The code is in the Chapter 17 download and individually named according to the names throughout the chapter.

UNDERSTANDING SERIALIZATION

A document in an MFC-based program is not a simple entity — it’s a class object that can be very complicated. It typically contains a variety of objects, each of which may contain other objects, each of which may contain still more objects and that structure may continue for a number of levels.

You want to be able to save a document in a file, but writing a class object to a file represents something of a problem because it isn’t the same as a basic data item like an integer or a character string. A basic data item consists of a known number of bytes, so to write it to a file only requires that the appropriate number of bytes be written. Conversely, if you know a value of type int was written ...

Get Ivor Horton's Beginning Visual C++ 2013 now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.