moc_kviz.cpp:72: error: undefined reference to `Kviz::on_lineEdit_textChanged(QString const&)'

moc_kviz.cpp:72: error: undefined reference to `Kviz::on_lineEdit_textChanged(QString const&)'

此错误向我显示以下内容:

void Kviz::qt_static_metacall(QObject *_o, QMetaObject::Call _c, int _id, void **_a)
{
    if (_c == QMetaObject::InvokeMetaMethod) {
        Kviz *_t = static_cast<Kviz *>(_o);
        Q_UNUSED(_t)
        switch (_id) {
        case 0: _t->on_lineEdit_textChanged((*reinterpret_cast< const QString(*)>(_a[1]))); break;
        default: ;
        }
    }
}


如果我删除 switchcasedefault 它会 运行 几次然后再回来。我假设这个错误是因为我有一个 lineEdit 并且我摆弄了它的 textChanged 插槽。但是,我从 UI 和相关代码中删除了它,我不确定它为什么会回来。

qt_static_metacall是MOC自动生成的,应该是过段时间显示的原因。 我相信您忘记从 *.c 或 *.h 文件中删除 on_lineEdit_textChanged(QString const&)