Visual C++. Описание стандартных классов - Serialize

ОГЛАВЛЕНИЕ


Serialize

virtual void Serialize(CArchive& ar);
throw(CMemoryException);
throw(CArchiveException);
throw(CFileException);

Аргументы

  • ar - объект класса CArchive осуществляющий чтение и запись объекта на диске.

Описание

Читает объект с диска и записывает его на диск в с использованием объекта класса архива. Данная функция должна быть перегружена в каждом производном классе, предполагающем работу с архивом. Первым оператором перегруженной функции должен быть вызов функции Serialize базового класса. Для того, чтобы иметь возможность использовать данную функцию в своем классе, при его описании в файле заголовка должен быть использован макрос DECLARE_SERIAL, а в его файле реализации - макрос IMPLEMENT_SERIAL. Для того, чтобы определить, какая операция производится в данном случае, используются функции CArchive::IsLoading и CArchive::IsStoring. Функция Serialize вызывается функциями CArchive::ReadObject и CArchive::WriteObject, которые, в свою очередь, вызываются переопределенными операторами CArchive::operator << и CArchive::operator >>, первый из которых производит запись объекта в архив, а второй - извлечение объекта из архива.