2016-07-19 16 views
0

次のコードに誤りがあります。私はここに与えられた多くのオプションでそれを修正しようとしましたが、できませんでした。ここエラー:「vtable for class」への未定義の参照

#ifndef JUEGO2PRUEBA_H 
#define JUEGO2PRUEBA_H 
class juego2Prueba: public QGraphicsView 
{ 
Q_OBJECT 
public: 
    juego2Prueba(); 
    ~juego2Prueba(); 
private slots: 
    void on_buttonLeft_clicked(); 
    void on_buttonRight_clicked(); 
    void on_buttonUp_clicked(); 
    void on_buttonDown_clicked(); 

private: 
    void mueveMomia(); 
    void mejorMovMomia(QChar direccion); 
    void finalizaJuego(); 
    bool puedeMoverse(int x, int y,QChar mov); 
    void creaTablero(); 
} 

と.CPP

juego2Prueba::juego2Prueba(){ 
    //CODE 
} 

void juego2Prueba::on_buttonRight_clicked() 
{//CODE} 

void juego2Prueba::on_buttonLeft_clicked() 
{//CODE} 
void juego2Prueba::on_buttonUp_clicked() 
{//code} 
void juego2Prueba::on_buttonDown_clicked() 
{//code} 
void juego2Prueba::mueveMomia(){ 
//code} 
void juego2Prueba::mejorMovMomia(QChar direccion){ 
//CODE} 
void juego2Prueba::finalizaJuego(){ 
    this->hide(); 
    timerPerdio->stop();} 
bool juego2Prueba::puedeMoverse(int x, int y, QChar mov){ 
//code} 
void juego2Prueba::creaTablero(){ 
//more code} 
juego2Prueba::~juego2Prueba(){ 
} 

.Hあるエラー:

C:\Users\Barrionuevo\Desktop\build-MummyAlgoritmos-Desktop_Qt_5_6_0_MinGW_32bit-Debug\debug\juego2prueba.o:-1: In function `ZN12juego2PruebaC2Ev': 
C:\Users\Barrionuevo\Desktop\MummyAlgoritmos\juego2prueba.cpp:7: error: undefined reference to `vtable for juego2Prueba' 
C:\Users\Barrionuevo\Desktop\MummyAlgoritmos\juego2prueba.cpp:7: error: undefined reference to `vtable for juego2Prueba' 
+0

QtCreatorをフルクリーンにして再起動しましたか?あなたが試した「ここに与えられた多くのオプション」が何をしているのかを明確にすることは、おそらく「そこにあって、そのことを」提案を排除する助けになるでしょう。 – WhozCraig

+0

qmakeを実行しましたか?誤っていない場合は、信号を追加または削除した後に再実行する必要があります。 – SurvivalMachine

+0

QGraphicsViewクラスがリンカーで使用できない可能性があります – Martin

答えて

-1

"未定義参照のVtableする"

    ことQT手段3210
  1. シグナルスロット機構に問題があります。シグナルは でしたが、スロットオブジェクトへの参照は無効です。だから 信号/スロットの関係が壊れているかどうかを調べてみてください モデルをビューに割り当てました
  2. まだ存在する古いコンパイラ生成mocファイルがあります。完全なデバッグとリリースのフォルダを削除するだけです。
+0

これはリンカーエラーです。リンク時に信号スロットの接続が確立されていません。 – rubenvb

関連する問題