LNK2019

作者: 雯饰太一 | 来源:发表于2023-07-19 09:25 被阅读0次

    错误如下:

    错误 3 error LNK2019: 无法解析的外部符号 "public: static struct QMetaObject const SimDataReceive::staticMetaObject" (?staticMetaObject@SimDataReceive@@2UQMetaObject@@B),该符号在函数 "public: static class QMetaObject::Connection __cdecl QObject::connect<void (__thiscall SimDataReceive::*)(char const *,void const ,unsigned int),void (__thiscall EarthViewManager::)(char const *,void const *,unsigned int)>(class SimDataReceive const ,void (__thiscall SimDataReceive::)(char const *,void const *,unsigned int),class EarthViewManager const ,void (__thiscall EarthViewManager::)(char const *,void const *,unsigned int),enum Qt::ConnectionType)" (??$connect@P8SimDataReceive@@AEXPBDPBXI@ZP8EarthViewManager@@AEX01I@Z@QObject@@SA?AVConnection@QMetaObject@@PBVSimDataReceive@@P83@AEXPBDPBXI@ZPBVEarthViewManager@@P84@AEX12I@ZW4ConnectionType@Qt@@@Z) 中被引用 D:\workplace\sstftyrunner_0419\src\SSTFTY\GtEarthMgrPlugin\earth_view_manager.obj GtEarthMgrPlugin

    备注:

    没有生成moc文件,只要继承了Qobject类,添加了Q_OBJECT宏之后,就应当会生成一个moc_XXX.cpp的文件,该文件实现了QObject的一些基础类,如果没有该文件,就会报上述错误;

    解决方案:将对应的.h.cpp文件移除后重新添加到工程中,将自动生成moc文件,如果这个类有对应的.ui文件可以直接对该.ui文件进行编译,同样可以生成moc文件;

    如果移除之后重新添加,还是不可以,干脆直接重建整个工程吧。换言之,项目构建之初,能编译通过的时候,一定要做好备份。

    相关文章

      网友评论

          本文标题:LNK2019

          本文链接:https://www.haomeiwen.com/subject/asmredtx.html