аннулировать MapObject (const CObject * МР );
Параметры
мР
Постоянное указатель на объект будет храниться.
Примечания
Вызов этой функции-члена для размещать объекты на карте, не сериализуются в файл, но, доступных для вложенных объектов для ссылки. К примеру не может сериализовать документ, но будет сериализовать элементы, которые являются частью docume&nt.nbsp; Путем вызова MapObject, разрешить эти элементы или подчиненные объекты, чтобы ссылаться на этот документ. Кроме того сериализованный подэлементов можно сериализовать их обратный указатель m_pDocument.
Вы можете вызвать MapObject когда вы хранить и загрузить из объекта CArchive . MapObject добавляет указанный объект в структуры внутренних данных, поддерживаемых объекта CArchive во время сериализации и десериализации, но в отличие от ReadObject и, WriteObjectне называем сериализовать объект.
Пример
/ / MyDoc.h
/ / Документ должен иметь DECLARE_SERIAL и IMPLEMENT_SERIAL
класс CMyDocument: государственные CDocument
{
CObList m_listOfSubItems;
nbsp; ...
DECLARE_SERIAL(CMyDocument)
};
/ / MyDoc.cpp
...
IMPLEMENT_SERIAL (CMyDocument, от CObject, 1)
...
void CMyDocument::Serialize (CArchive и Ар)
{
Если (Ар.IsStoring())
{
/ / TODO: Добавьте здесь хранение код
}
остальное
{
/ / TODO: Добавьте здесь код загрузки
}
а.р.MapObject(this);
//Serialize подэлементов в документе;
//They будет иметь возможность сериализовать их m_pDoc
//Back указатель
m_listOfSubItems.Serialize(AR);
}
//SubItem.h
класс CSubItem: государственные CObject
{
общественности:
CSubItem(CMyDocument * pDoc)
{m_pDoc = pDoc;}
/ / назад указатель к иметь документ
CMyDocument * m_pDoc;
СЛОВО m_i; / / другие пункт данных
виртуальный void Serialize (CArchive и Ар);
};
//SubItem.cpp
void CSubItem::Serialize (CArchive и Ар)
{
Если (Ар.IsStoring())
{
/ / будет сериализовать содержащимся ссылка указателя «сопоставленных» документа
Ар << m_pDoc;
Ар << m_i;
}
остальное
{
/ / Загружает ссылку на указатель «сопоставленных» документа //первое
Ар >> m_pDoc;
Ар >> m_i;
}
}
Обзор CArchive | Члены класса | Иерархическая схема
См. также CArchive::ReadObject, CArchive::WriteObject