DECLARE_SERIAL
Generates the C++ header code necessary for a CObject-derived class that can be serialized.
Syntax
DECLARE_SERIAL(
class_name )
Parameters
- class_name
The actual name of the class.
Remarks
Serialization is the process of writing or reading the contents of an object to and from a file.
Use the DECLARE_SERIAL macro in an .h module, and then include that module in all .cpp modules that need access to objects of this class.
If DECLARE_SERIAL is included in the class declaration, then IMPLEMENT_SERIAL must be included in the class implementation.
The DECLARE_SERIAL macro includes all the functionality of DECLARE_DYNAMIC and DECLARE_DYNCREATE.
You can use the AFX_API macro to automatically export the CArchive extraction operator for classes that use the DECLARE_SERIAL and IMPLEMENT_SERIAL macros. Bracket the class declarations (located in the .h file) with the following code:
#undef AFX_API
#define AFX_API AFX_EXT_CLASS
// <your class declarations here>
#undef AFX_API
#define AFX_API
For more information on the DECLARE_SERIAL macro, see CObject Class Topics.
Example
class CAge : public CObject
{
public:
void Serialize(CArchive& ar);
DECLARE_SERIAL(CAge)
// remainder of class declaration omitted
Requirements
Header: afx.h
See Also
MFC Macros and Globals
DECLARE_DYNAMIC
IMPLEMENT_SERIAL
RUNTIME_CLASS
CObject::IsKindOf