void MapObject (const CObject * pOb );
Parámetros
pOb
Un constante puntero al objeto que se almacena.
Observaciones
Esta fu&nción miembro para colocar los objetos en el mapa que no son realmente serializa en el archivo, pero que están disponibles para subobjetos para hacer referencia a la palabra. Por ejemplo, no puede serializar un documento, pero sería serializar los elementos que forman parte de la document.nbsp; Llamando al MapObject, permite que dichos objetos o subobjetos, que hacen referencia al documento. También, los subelementos serializados pueden serializar su puntero posterior m_pDocument.
Puede llamar a MapObject al almacenar y cargar desde el objeto CArchive . MapObject agrega el objeto especificado para las estructuras de datos internas mantenidas por el objeto CArchive durante la serialización y deserialización, pero a diferencia de ReadObject y WriteObject, no llame a serializar el objeto.
Ejemplo
/ / MyDoc.h
/ / Documento debe tener DECLARE_SERIAL y IMPLEMENT_SERIAL
clase CMyDocument: CDocument pública
{
CObList m_listOfSubItems;
nbsp; ...
DECLARE_SERIAL(CMyDocument)
};
/ / MyDoc.cpp
...
IMPLEMENT_SERIAL (CMyDocument, CObject, 1)
...
void CMyDocument::Serialize (CArchive & ar)
{
Si (ar.IsStoring())
{
/ / TODO: agregar código de almacenamiento
}
otra cosa
{
/ / TODO: agregar aquí el código de carga
}
ar.MapObject(this);
//Serialize los subelementos en el documento;
//They será capaz de serializar su m_pDoc
puntero //back
m_listOfSubItems.Serialize(ar);
}
//SubItem.h
clase CSubItem: CObject pública
{
público:
CSubItem(CMyDocument * pDoc)
{m_pDoc = pDoc;}
/ / puntero de vuelta a poseer el documento
CMyDocument * m_pDoc;
WORD m_i; / otros datos el tema
virtual void Serialize (CArchive & ar);
};
//SubItem.cpp
void CSubItem::Serialize (CArchive & ar)
{
Si (ar.IsStoring())
{
/ / serializará un //con de referencia el puntero de documento "asignado"
ar << m_pDoc;
ar << m_i;
}
otra cosa
{
/ / cargará una referencia al puntero de documento "asignado" //the
ar >> m_pDoc;
ar >> m_i;
}
}
Visió&n General de CArchive |nbsp; Miembros de clase | Diagrama de jerarquía
Vea tambié&nnbsp;CArchive::ReadObject, CArchive::WriteObject