Диспетчер исключает динамический объект из
Диспетчер исключает динамический объект из списка и уничтожает его (как динамический объект).
Вторая часть диспетчера опрашивает внешние источники сообщений - клавиатуру и часы - и формирует сообщения от них, которые включает в очередь диспетчера.
Деструктор " вычищает" очереди сообщений и объектов, разрушая сами сообщения и объекты.
// Деструктор: уничтожение сообщений и объектов ----- --------
PRG::~PRG()
{
while ((MS *p=messages.Remove(0))!=NULL) delete p;
while ((OBJ *q=objects.Remove(0)) !=NULL) delete q;
}
Для создания прикладной программы, нужно определить производный класс от класса
PRG , конструктор которого порождает те объекты, которые изначально присутствуют в программе. Естественно, что они должны быть из классов, управляемых сообщениями.
// Производный класс прикладной программы --------------------
class myPRG : public PRG
{
public:
myPRG() { MOUSE *pms = new MOUSE; }
};
Основная программа main состоит из двух строчек - создать единственный объект класса myprog и вызвать для него метод run , поскольку все, что можно было, уже реализовано в предыдущих классах.
void main()
{
myPRG myprog;
myprog.run();
}
В заключение рассмотрим, как выглядит процесс программирования, основанный на обработке событий. Его сущность заключается в разработке системы объектов, системы сообщений и реакций на них со стороны объектов - своего рода " правил игры" . Конкретная конфигурация объектов и их связей в программе не оговаривается, она возникает уже в процессе взаимодействия объектов по разработанным правилам. Поэтому такая систем особенно удобна там, где количество объектов заранее не известно или меняется по ходу программы. Рассмотрим в качестве примера несколько классов движущихся по экрану объектов с простыми правилами взаимодействия. Для начала определим классы - видимая и движущаяся точки и курсор, управляемый с клавиатуры.
Класс " видимая точка" представляет собой символ, отображаемый на экране в заданной позиции. Данные этого объекта включают в себя координаты точки и код символа, а методы - перемещение объекта на одну позицию и отображение.
Содержание Назад Вперед
Forekc.ru
Рефераты, дипломы, курсовые, выпускные и квалификационные работы, диссертации, учебники, учебные пособия, лекции, методические пособия и рекомендации, программы и курсы обучения, публикации из профильных изданий