问题:
在没有声明 Q_OBJECT 的情况下就编译使用到信号槽的类,
导致即便加上 Q_OBJECT 重新编译也依然会出现错误如下:
无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall NEA::metaObject(
解决办法:
从工程中暂时移除所有用了 Q_OBJECT 的头文件和cpp文件,
再把这些文件重新添加到工程中,在添加后 visual studio 会自动重新生成 moc 文件,
重新编译OK。
博客指出在未声明Q_OBJECT就编译使用信号槽的类,即便后续添加Q_OBJECT重新编译,仍会出现无法解析的外部符号错误。解决办法是从工程中暂时移除所有用了Q_OBJECT的头文件和cpp文件,再重新添加,让Visual Studio自动重新生成moc文件后重新编译。
问题:
在没有声明 Q_OBJECT 的情况下就编译使用到信号槽的类,
导致即便加上 Q_OBJECT 重新编译也依然会出现错误如下:
无法解析的外部符号 "public: virtual struct QMetaObject const * __thiscall NEA::metaObject(
解决办法:
从工程中暂时移除所有用了 Q_OBJECT 的头文件和cpp文件,
再把这些文件重新添加到工程中,在添加后 visual studio 会自动重新生成 moc 文件,
重新编译OK。
3309
6777

被折叠的 条评论
为什么被折叠?