Иерархия классов MFC

   
На этом шаге мы приведем фрагмент иерархии классов MFC.

   
Библиотека MFC реализована как набор классов C++. Одним из основных способов повторного использования кода в C++
является механизм наследования. Он позволяет создать производный класс, обладающий всеми характеристиками родительского.
Подобно другим библиотекам классов C++, классы, входящие в MFC, организованы в виде наследственной иерархии.
Она содержит огромное количество узкоспециальных классов, производных от нескольких базовых, обеспечивающих всех своих потомков общими функциями.

   
В качестве примера на рисунке 1 показана структура наследования класса CDialog, представляющего диалоговое окно Windows.


Рис.1. Структура наследования класса CDialog

   
На вершине иерархии MFC находится класс CObject. Он является базовым для большинства классов MFC, обеспечивая их основными
функциями, к которым относится в том числе сериализация (сохранение и восстановление объектов в/из файла), информация о классе
периода выполнения, поддержка диагностики и отладки (проверка достоверности и создание дампов), совместимость с классами наборов.

   
CCmdTarget - базовый класс для объектов, способных обрабатывать сообщения Windows.

   
Класс CWnd представляет окно. Тот факт, что класс CDialog является производным от CWnd, подтверждает, что диалог - это специальный тип окна.

   
Проиллюстрируем, как использовать справочную систему Visual C++ для просмотра иерархии классов MFC (MFC Hierarchy Chart).

  • Просмотр MFC Hierarchy Chart.
  • Запустите Visual C++. В меню Help выберите пункт Index. Откроется библиотека MSDN, причем курсор будет помещен в
    поле Туре in the keyword to find (Введите ключевое слово для поиска).
  • В этом поле наберите hierarchy chart.
  • В появившемся списке дважды щелкните элемент hierarchy chart. В правой панели окна появится изображение иерархии классов MFC.
  • Изучите иерархию классов MFC. Обратите внимание на то, что классы объединены в группы - их названия помечены полужирным начертанием.
    Посмотрите, какие классы унаследованы от классов CObject, CCmdTarget и CWnd.


    Рис.2. Окно с иерархией классов

   
На следующем шаге мы приведем классификацию классов MFC.



Вы можете оставить комментарий, или Трекбэк с вашего сайта.

Оставить комментарий