Qt Linker Error: «неопределенная ссылка на vtable» [duplicate]
На этот вопрос уже есть ответ:
Неопределенная ссылка на vtable. Попытка скомпилировать проект Qt 16 ответовЭто мой заголовок:
#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
Это мой класс:
#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)
{
}
Я получаю ошибку компоновщика:
undefined reference to 'vtable for BarelySocket'
Это означает, что у меня виртуальный метод не реализован. Но в моем классе нет виртуальных методов. Я прокомментировал вектор, думая, что это было причиной, но ошибка не исчезла.TheMessage
это комплексstruct
, но даже используяint
вместо этого не исправить вещи.