Я использую Qt Creator 2.0.1 с Qt 4.7.0 (32 бит) в Windows 7 Ultimate 32 бит.
Рассмотрим следующий код, который является минимальным для возникновения ошибки:
class T : public QObject, public QGraphicsItem
{
    Q_OBJECT
public:
    T() {}
    QRectF      boundingRect() const {return QRectF();}
    void        paint(QPainter *painter, const QStyleOptionGraphicsItem *option,
                      QWidget *widget) {}
};
int main()
{
    T t;
    return 0;
}
Вышеупомянутый фрагмент кода вызывает следующие ошибки компоновщика:
В функции `T ':
undefined ссылка на `vtable для T '
undefined ссылка на `vtable для T '
В функции `~ T ':
undefined ссылка на `vtable для T '
undefined ссылка на `vtable для T '
Если я прокомментирую строку, содержащую Q_OBJECT, она компилируется отлично. Мне нужен сигнал и слоты с QGraphicsItem, поэтому мне нужно Q_OBJECT.
Что не так с кодом? Спасибо.