QT中,類要支持信號與槽機制,需要繼承自QObject並在頭文件開頭添加Q_OBJECT宏.
如果使用QtCreator創建類時,沒有選擇繼承自QObject類或其子類,而在創建後手工修改繼承自QObject並手工添加Q_OBJECT宏,則在編譯時有可能會出現"function vtable for error: undefined reference to … " 錯誤.
解決方法: 把新創建的類文件從項目中移除(不要從磁盤上刪除),然後再添加進項目工程,QtCreator就會重新解析此類,再編譯就不再會出現上述錯誤.