C++ 如何解决这些Qt错误?

C++ 如何解决这些Qt错误?,c++,qt,C++,Qt,我有以下文件是Qt程序的一部分: checkabder.h #include <QDialog> #include "ui_checkabder.h" class CheckAbder: public QDialog, public Ui::CheckAbder { Q_OBJECT public: CheckAbder(QWidget *parent=0); private slots: void on_lineEdit_textChanged(); }; #包括 #包括“ui_

我有以下文件是
Qt
程序的一部分:

checkabder.h

#include <QDialog>
#include "ui_checkabder.h"
class CheckAbder: public QDialog, public Ui::CheckAbder
{
Q_OBJECT
public:
CheckAbder(QWidget *parent=0);
private slots:
void on_lineEdit_textChanged();
};
#包括
#包括“ui_checkabder.h”
类CheckAbder:publicQdialog,publicUI::CheckAbder
{
Q_对象
公众:
CheckAbder(QWidget*parent=0);
专用插槽:
在_lineEdit_textChanged()上无效;
};
checkabder.cpp

#include <QtGui>
#include "checkabder.h"
CheckAbder::CheckAbder(QWidget *parent): QDialog(parent)
{
setupUi(this);
QRegExp regexp("Abder-Rahman");
QValidator *validator = new QRegExpValidator(regexp, this);
lineEdit->setValidator(validator);
connect(okButton, SIGNAL(clicked()), this, SLOT(accept()));
connect(cancelButton, SIGNAL(clicked()), this, SLOT(reject()));
}

void CheckAbder::on_lineEdit_textChanged()
{
okButton->setEnabled(lineEdit->hasAcceptableInput());
}
#包括
#包括“checkabder.h”
CheckAbder::CheckAbder(QWidget*父项):QDialog(父项)
{
setupUi(本);
QRegExp regexp(“阿卜杜勒·拉赫曼”);
QValidator*validator=新的QRegExpValidator(regexp,this);
lineEdit->setValidator(验证程序);
连接(确定按钮、信号(单击())、此、插槽(接受());
连接(取消按钮、信号(单击())、此、插槽(拒绝());
}
void CheckAbder::on_lineEdit_textChanged()
{
OK按钮->设置启用(lineEdit->hasAcceptableInput());
}
当我尝试运行应用程序时,出现以下错误:

C:/Users/avbder/Desktop/abder/debug/checkabder.o:-1:在函数“checkabder”中:

C:\Users\avbder\Desktop\abder/checkabder.cpp:3:错误:未定义对“vtable for checkabder”的引用

C:\Users\avbder\Desktop\abder/checkabder.cpp:3:错误:未定义对“vtable for checkabder”的引用

C:\Users\avbder\Desktop\abder/checkabder.cpp:3:错误:未定义对“vtable for checkabder”的引用

C:\Users\avbder\Desktop\abder/checkabder.cpp:3:错误:未定义对“vtable for checkabder”的引用

:-1:错误:collect2:ld返回了1个退出状态

关于如何解决这些问题有什么想法吗


谢谢。

它正在寻找
CheckAbder(…)
的第一个虚拟方法的参考,但找不到


或者,它可能只是您的类的定义方式以及MOC文件的问题。请参见此。

它正在查找对
CheckAbder(..)
的第一个虚拟方法的引用,但找不到


或者,它可能只是您的类的定义方式以及MOC文件的问题。看看这个。

谢谢你的回复。那么,在这种情况下我应该怎么做呢?假设您使用的是QtCreator,请转到Build>runqmake,然后再次编译。@Dave。谢谢你的回复。错误现在已经消失,但是
connect
s的功能不起作用。为什么?@user714961:对不起,我需要更多的信息。如果你仍然有问题,发布另一个问题,因为你现在遇到的问题似乎无关。谢谢你的回复。那么,在这种情况下我应该怎么做呢?假设您使用的是QtCreator,请转到Build>runqmake,然后再次编译。@Dave。谢谢你的回复。错误现在已经消失,但是
connect
s的功能不起作用。为什么?@user714961:对不起,我需要更多的信息。如果您仍然有问题,请发布另一个问题,因为您现在遇到的问题似乎不相关。样式提示:最好添加Ui::CheckAbder*m_Ui成员,而不是从其继承。样式提示:最好添加Ui::CheckAbder*m_Ui成员,而不是从其继承。