J'utilise Qt Creator 2.0.1 avec Qt 4.7.0 (32 bits) Windows 7 Ultimate 32 bits.
Considérons le code suivant, qui est un minimum pour produire l'erreur:
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;
}
Le fragment de code ci-dessus les causes suivantes erreurs d'édition de liens:
Dans la fonction "T":
undefined reference to `vtable for T'
undefined reference to `vtable for T'
Dans la fonction `~T':
undefined reference to `vtable for T'
undefined reference to `vtable for T'
Si je commente la ligne qui contient Q_OBJECT
, il compile bien. J'ai besoin de signaux et de slots, avec QGraphicsItem
j'ai donc besoin d' Q_OBJECT
.
Quel est le problème avec le code? Merci.