我正在试图使代码找到this page编译。我想要做的就是复制该页面描述的内容。我不断收到一个错误,指出:简单的应用程序获取“未定义引用vtable”错误? [Qt]
main.cpp:13: error: undefined reference to `vtable for myMainWindow'
这里是我的代码,这是几乎完全一样的页面代码:
的main.cpp
#include <QApplication>
#include <QDialog>
#include <QWidget>
#include <QGridLayout>
#include <QPushButton>
#include <QMainWindow>
#include <QBitmap>
class myMainWindow : public QMainWindow
{
public:
myMainWindow():QMainWindow()
{
setMask((new QPixmap("saturn.png"))->mask());
QPalette* palette = new QPalette();
palette->setBrush(QPalette::Background,QBrush(QPixmap("saturn.png")));
setPalette(*palette);
setWindowFlags(Qt::FramelessWindowHint);
QWidget *centralWidget = new QWidget(this);
QGridLayout *layout = new QGridLayout();
centralWidget->setLayout(layout);
QPushButton* button1 = new QPushButton("Button 1");
button1->setFixedSize(80,50);
layout->addWidget(button1,0,0);
setCentralWidget(centralWidget);
};
~myMainWindow();
};
int main(int argc, char *argv[])
{
QApplication app(argc, argv);
myMainWindow *window = new myMainWindow();
window->resize(600, 316);
window->show();
return app.exec();
}
我读了为什么这可能会发生,并且看到它是需要在头文件中定义类的东西。我怎么会这样做正确给这个代码?
谢谢。
你是否在某处提供了析构函数的函数体? – Anedar
将头文件添加到.pro并运行qmake – user3528438
@Anedar,那就是问题所在!谢谢!你可以添加一个答案,所以我可以标记为完整? – orbit