Question:
QT compilation error:
error: undefined reference to `vtable ...`
reason:
1.Qt uses signals and slots to implement communication features.
2.Signals and slots can be used when the class is derived from QObject and the Q_OBJECT macro is added to the header file.
3.When Q_OBJECT is added to the class header file QtCreator will automatically create a moc_***.cpp file that implements the code for signal and slot communication.
4.However, sometimes when we create a class through QtCreator without selecting the IDE option to derive it from the QObject class, but add it later, QtCreator will not automatically create the moc_***.cpp file. In this case it will report an error: undefined reference to `vtable for ***.
Solution:
According to various online methods, it can not be solved, nor can rebuild
mine is a small project. Just delete the build-XXX
folder and rebuild it.