Этого класса не проблемы:Q_OBJECT порождает множество ошибок
#include <QThread>
class LiveImageItem : public QThread
{
Q_OBJECT
public:
LiveImageItem(QPixmap pimg);
signals:
public slots:
};
НО этот класс получить проблемы, связанные с «Q_OBJECT» макрос, определенными в заголовочном файле
#include <QGraphicsPixmapItem>
class LiveImageItem : public QGraphicsPixmapItem
{
Q_OBJECT //this line will generate many errors in compiling
public:
LiveImageItem(QPixmap pimg);
signals:
public slots:
};
как их файл CPP является такие как:
#include "LiveImageItem.h"
LiveImageItem::LiveImageItem(QPixmap pimg)
{
}
I t купил каждый объект QT, по существу унаследованный от QObject, поэтому, если я наследую какой-либо подкласс QObject, я мог бы предложить все магические предложения QObject. 2-я версия выше (которая унаследована от, скажем, QGraphicsPixmapItem), кажется доказанной, я был неправ. Оказывается, при компиляции много ошибок, все из moc-файлов (автоматически генерируемых QT). Что происходит?
Некоторые из этих ошибок:
- [qobject.h] Ошибка: 'QScopedPointer QObject :: d_ptr' является защищен
[moc_LiveImageItem.cpp] Ошибка: в этом контексте
...
Я вижу, что вы наследуете от QThread для LiveImageItem ... вы должны прочитать это: http://blog.qt.digia.com/blog/2010/06/17/youre-doing-it-wrong/ – TheDarkKnight