Visual C++. Описание стандартных классов - CObject
ОГЛАВЛЕНИЕ
CObject
Класс CObject является одним из основных классов Microsoft Foundation Class Library. Он является базовым классом не только для классов библиотек, таких как CFile и CObList, но и для многих пользовательских классов. Использование класса CObject позволяет:
- работать с архивами;
- создавать классы в процессе выполнения приложения;
- производить диагностику объектов;
- обеспечивать совместимость с классами коллекций.
Класс CObject не поддерживает множественное наследование. Создаваемые на его основе классы могут иметь в качестве базового класса только класс CObject, и этот класс должен быть самым старшим в иерархии. Для того чтобы воспользоваться всеми возможностями, предоставляемыми классом CObject необходимо использовать специальные макросы при объявлении и реализации производных от него классов. Макросами первого уровня являются DECLARE_DYNAMIC и IMPLEMENT_DYNAMIC, обеспечивающие доступ к имени класса и его положению в иерархии в процессе выполнения приложения. Это, в свою очередь, позволяет создавать осмысленные диагностические сообщения. Макросами второго уровня являются DECLARE_SERIAL и IMPLEMENT_SERIAL, обладающие всеми возможностями макросов первого уровня, но обеспечивающие возможность работы с архивами. Описание данного класса содержится в файле заголовка afx.h. Функции данного класса используются во всех демонстрационных приложениях, приведенных в данной книге.