Поделиться через


CObject::Serialize

Считывает или записывает данный объект или архива.

virtual void Serialize( 
   CArchive& ar  
);

Параметры

  • ar
    Объект CArchive для сериализации или из.

Заметки

Необходимо переопределить Serialize для каждого класса, который требуется сериализовать. Переопределенный Serialize первый вызов функции Serialize базового класса.

Также следует использовать макрос DECLARE_SERIAL в объявлении класса, и необходимо использовать макрос IMPLEMENT_SERIAL в реализации.

Используйте CArchive::IsLoading или CArchive::IsStoring, чтобы определить, загружается ли файл или хранилищами.

Serialize вызываются CArchive::ReadObject и CArchive::WriteObject. Эти функции сопоставлены с оператором вставки CArchive (<<) и оператором извлечения (>>).

Примеры сериализации см. в статье сериализация: сериализовать объект.

Пример

См. перечисление CObList::CObList для класса CAge, используемого во всех примерах CObject.

void CAge::Serialize(CArchive& ar)
{
   CObject::Serialize(ar);
   if(ar.IsStoring())
      ar << m_years;
   else
      ar >> m_years;
}

Требования

Header: afx.h

См. также

Ссылки

Класс CObject

Диаграмма иерархии