Undefined reference for vtable
bonjours lors de l compilation j'ai cette erreur :undefined reference to vtable
Je croit que cela pourrait provenir d'un objet non instancier ???
voici le code de la classe d'ou provient l'erreur:
.cpp:
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58
|
#include "piece.h"
#include <QLabel>
//constructeur
Piece::Piece(int dX, int dY, int pX, int pY) : deplacementX(dX),deplacementY(dY),positionX(pX),positionY(pY)
{
}
//constructeur de copie
Piece::Piece(const Piece& p):deplacementX(p.getDeplacementX()),deplacementY(p.getDeplacementY()),positionX(p.getPositionX()),positionY(p.getPositionY())
{
}
//operateur = redéfinition
Piece& Piece::operator =(const Piece& p)
{
if(&p != this)
{
deplacementX = p.getDeplacementX();
deplacementY = p.getDeplacementY();
positionX = p.getPositionX();
positionY = p.getPositionY();
}
return *this;
}
int Piece::getDeplacementX()const
{
return this->deplacementX;
}
int Piece::getDeplacementY()const
{
return this->deplacementY;
}
int Piece::getPositionX()const
{
return this->positionX;
}
int Piece::getPositionY()const
{
return this->positionY;
}
void Piece::setPositionX(int pX)
{
this->positionX = pX;
}
void Piece::setPositionY(int pY)
{
this->positionY = pY;
}
void Piece::deplacement(int,int)
{
} |
.h :
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37
|
#ifndef PIECE_H
#define PIECE_H
#include <QLabel>
class Piece : public QLabel
{
Q_OBJECT
private :
int deplacementX;//deplacement horizontal de la piece
int deplacementY;//deplacement vertical de la piece
int positionX;//position sur label de coordonnee X
int positionY;//position sur label de coordonnee Y
public:
Piece(int,int,int,int);
Piece(const Piece&);
Piece& operator=(const Piece&);
int getDeplacementX()const;
int getDeplacementY()const;
int getPositionX()const;
int getPositionY()const;
void setPositionX(int);
void setPositionY(int);
virtual void deplacement(int ,int)=0;
};
#endif // PIECE_H |