"function vtable for error: undefined reference to ... " 問題的原因及解決方法

QT中,類要支持信號與槽機制,需要繼承自QObject並在頭文件開頭添加Q_OBJECT宏.
如果使用QtCreator創建類時,沒有選擇繼承自QObject類或其子類,而在創建後手工修改繼承自QObject並手工添加Q_OBJECT宏,則在編譯時有可能會出現"function vtable for error: undefined reference to … " 錯誤.

解決方法: 把新創建的類文件從項目中移除(不要從磁盤上刪除),然後再添加進項目工程,QtCreator就會重新解析此類,再編譯就不再會出現上述錯誤.

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章