Microsoft Visual C++ и MFC. Программирование для Win95 и WinNT

         

Получение дампа объекта класса


Виртуальный метод Dump позволяет получить дамп объекта данного класса:

virtual void Dump(CDumpContext& dc) const;

Метод Dump имеет единственный параметр dc, определяющий контекст отображения для вывода дампа объекта. Часто в качестве параметра dc используется предопределенный объект afxDump. Он позволяет передавать информацию в окно отладчика Visual C++. Объект afxDump определен только для отладочной версии приложения.

Вы можете переопределить метод Dump для своего класса. Переопределенный метод должен сначала вызывать метод Dump базового класса, а затем выводить значения элементов самого класса. Для вывода значений элементов объекта класса в контекст dc можно использовать операторы <<, переопределенные для класса CDumpContext.

Если класс определен с макрокомандами IMPLEMENT_DYNAMIC или IMPLEMENT_SERIAL, то метод Dump класса CObject будет отображать также имя самого класса.

Для класса CFigure, описанного выше, метод Dump можно определить следующим образом:

void CFigure::Dump(CDumpContext &dc) const

{

      // Вызываем метод Dump базового класса

      CObject::Dump(dc);

      // Выводим в контекст dc значение элемента m_area

      // класса CFigure

      dc << "Площадь = " << m_area;

}



Содержание раздела