Философия объектной модели

   
На этом шаге рассмотрим объектную модель Qt.

   
Объектная модель Qt подразумевает, что все построено на объектах. Фактически, класс QObject — основной, базовый класс. Подавляющее большинство классов Qt являются его наследниками. Классы, имеющие сигналы и слоты, должны быть унаследованы от этого класса.

ПРИМЕЧАНИЕ.
При множественном наследовании важно помнить:

  • что при определении класса имя класса QObject (или унаследованного от него) должно стоять первым, чтобы MOC (Meta Object Compiler, метаобъектный компилятор) мог правильно распознать его. Другой порядок приведет к ошибке при компиляции. В примере приведен правильный порядок для множественного наследования.
     class MyClass : public QObject, public AnotherClass
    {
       ...
    };
  • что от класса QObject должен быть унаследован только один из базовых классов. Другими словами, нельзя производить наследование сразу от нескольких классов, наследующих класс QObject.

   
Класс QObject содержит в себе поддержку (для получения более подробной информации наведите курсор на компонент):

  • cигналов и слотов (signal/slot);
  • таймера;
  • механизма объединения объектов в иерархии;
  • событий и механизма их фильтрации;
  • организации объектных иерархий;
  • метаобъектной информации;
  • (), базирующуюся на метаинформации, создаваемой метаобъектным компилятором MOC, для классов, унаследованных от QObject">приведения типов;
  • свойств.

   
На следующем шаге рассмотрим определение свойств объектов.

Предыдущий шаг
Содержание
Следующий шаг



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

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