开发环境 KDevelop + QT4,初学qt,因处理过程中用到信号和槽,所以首先定义Q_OBJECT宏,同时出现了一个常见的错误,undefined reference to 'vtable for ',从网上搜集了一下,发现了一些有价值的东西,比如因为qmake生成Makefile的时候,这个类的头文件中并没有Q_OBJECT,所以在相应的Makefile里面并没有用moc xxx.h命令,最终导致链接失败,不能生成moc_....cpp
所以解决办法:
1.先运行qmake (qmake manager->放工程目录下的src点鼠标右键->run qmake)
2.后运行make (直接运行界面上的make按钮)
另外,若后面不需要信号与槽的处理,直接在头文件中将Q_OBJECT去掉即可。
阅读(1696) | 评论(0) | 转发(0) |