QT常见报错汇总(待更)

QT中添加一个新的类,并且继承QObject类之后,报以下错误:

 

mainwindowprivate.obj:-1: error: LNK2001: 无法解析的外部符号 "public: virtual struct QMetaObject const * __cdecl MainWindowPrivate::metaObject(void)const " (?metaObject@MainWindowPrivate@@UEBAPEBUQMetaObject@@XZ)

 

解决办法:

编译出错是因为没有生成moc_mainwindowprivate.cpp文件造成的。

如果新添加QObject派生类到您的项目,则必须再次运行qmake,即
1、清理项目(非必须)
2、运行qmake(必须)
3、构建项目(必须)
否则,如果在QObject继承的类上进行增量构建,那么您将拥有过时的moc文件,或者干脆没有moc文件。

posted @ 2020-12-17 09:20  学长的私房课  阅读(542)  评论(0编辑  收藏  举报