Qt Linker Error: “referência indefinida à vtable” [duplicado]

Esta pergunta já tem uma resposta aqui:

Referência indefinida para vtable. Tentando compilar um projeto Qt 16 respostas

Este é o meu cabeçalho:

#ifndef BARELYSOCKET_H
#define BARELYSOCKET_H

#include <QObject>
//! The First Draw of the BarelySocket!

class BarelySocket: public QObject
{
    Q_OBJECT

public:
    BarelySocket();
public slots:
    void sendMessage(Message aMessage);
signals:
    void reciveMessage(Message aMessage);

private:
    //   QVector<Message> reciveMessages;
};

#endif // BARELYSOCKET_H

Esta é a minha turma:

#include <QTGui>
#include <QObject>
#include "type.h"
#include "client.h"
#include "server.h"

#include "barelysocket.h"

BarelySocket::BarelySocket()
{
    //this->reciveMessages.clear();
    qDebug("BarelySocket::BarelySocket()");
}

void BarelySocket::sendMessage(Message aMessage)
{
}

void BarelySocket::reciveMessage(Message aMessage)
{
}

Eu recebo um erro de vinculador:

undefined reference to 'vtable for BarelySocket'
Isto implica que eu tenho um método virtual não implementado. Mas não há métodos virtuais na minha classe.Comentei o vetor pensando que era a causa, mas o erro não desapareceOMessage é um complexostruct, mas mesmo usandoint em vez disso, não consertava as coisa

questionAnswers(9)

yourAnswerToTheQuestion