Microsoft visual C++ и MFC.© Александр Фролов, Григорий ФроловТом 24, М.: Диалог-МИФИ, 1993. Классы, не имеющие базового классаКроме классов, наследованных от базового класса CObject, библиотека MFC включает ряд самостоятельных классов. У них нет общего базового класса и они имеют различное назначение. Несколько классов, которые не наследуются от базового класса CObject, мы уже описали. К ним относятся класс CCmdUI XE "CCmdUI" , CFileStatus XE "CFileStatus" , CDataExchange XE "CDataExchange" , CFieldExchange XE "CFieldExchange" и CDaoFieldExchange XE "CDaoFieldExchange" . Простые классыMFC содержит классы, соответствующие объектам типа простых геометрических фигур, текстовых строк и объектам, определяющим дату и время. В следующей таблице перечислены названия этих классов и их краткие описания.
Архивный класс (класс CArchive)Класс CArchive XE "CArchive" используется для сохранения и восстановления состояния объектов в файлах на диске. Перед использованием объекта класса CArchive он должен быть привязан к файлу - объекту класса CFile XE "CFile" . Более подробно о процессе сохранения и восстановления объектов вы можете прочитать в разделе “Сохранение и восстановление объектов”. Пример использования класса CArchive для записи и восстановления документов в файлах представлен в разделе “Простейший графический редактор” главы “Однооконный интерфейс”. Информация о классе объекта (структура CRuntimeClass)Во многих случаях бывает необходимо уже во время работы приложения получить информацию о классе объекта и его базовом классе. Для этого любой класс, наследованный от базового класса CObject связан с структурой CRuntimeClass XE "CRuntimeClass" . Она позволяет определить имя класса объекта, размер объекта в байтах, указатель на конструктор класса, не имеющий аргументов и деструктор класса. Можно также узнать подобную информацию о базовом классе и некоторые дополнительные сведения. Отладка приложения (классы CDumpContext, CMemoryState)В отладочной версии приложения вы можете использовать класс CDumpContext XE "CDumpContext" . Он позволяет выдавать состояние различных объектов в текстовом виде. Класс CMemoryState XE "CMemoryState" позволяет локализовать проблемы, связанные с динамическим выделением оперативной памяти. Такие проблемы обычно возникают, когда пользователь выделяет память, используя оператор new, а затем забывает ввернуть эту память операционной системе. Печать документа (класс CPrintInfo)Класс CPrintInfo предназначен для управления печатью документов на принтере. Когда пользователь отправляет документ на печать или выполняет предварительный просмотр документа перед печатью, создается объект класса CPrintInfo XE "CPrintInfo" . Он содержит различную информацию о том, какие страницы документа печатается и т. д. Кроме описанных нами классов библиотека MFC включает большое количество классов, предназначенных для организации технологии OLE. Из-за ограниченного объема книги мы не будем рассматривать приложения, поддерживающие OLE технологию. |