Qt Creator 关闭事件问题

Qt Creator closeEvent issue

我在使用 Qt Creator 时遇到了一个奇怪的问题,我是 Qt 和 C++ 的新手,所以我不知道为什么会这样:

本文来自mainwindow.cpp:

void closeEvent(QCloseEvent *event)
{
    Funct();
    event->ignore();
}

void Funct(void)
{
    return;
}

这是来自 mainwindow.h:

#include </*Stuff*/>
#include <QCloseEvent>

class NotepadWindow : public QMainWindow
{
    Q_OBJECT 

    public:
        NotepadWindow(QWidget *parent = 0);
        ~NotepadWindow();

    protected:
        void closeEvent(QCloseEvent *event);

    private:
        void Funct();
    /*More stuff*/
};

错误:

D:\Users\...\notepadwindow.cpp:480: error: C3861: 'Funct': cannot find identifier

我真的迷失了:/ 谢谢

替换 void closeEvent(QCloseEvent *event)

void NotepadWindow::closeEvent(QCloseEvent *event)

没有 NotepadWindow:: 函数就不是 class 的一部分,编译器不知道 Funct 你在说什么。

然后对 Funct 执行相同的操作,将 void Funct(void) 替换为 void NotepadWindow::Funct(void),以便编译器知道您正在实现 class 的函数,而不是单独的不相关函数。