开发环境由vs2010 qt4.7 升级到vs2017+5.9 。两个环境同时存在。
有时 从QObject派生的类不能自动将对应的moc文件添加到 genaral/debug/release文件过滤器下。
需要手动添加 。
但是系统提示 选择要添加的moc文件的名称无效。添加失败。
查看是Q_MOC_OUTPUT_REVERSION !=67 造成。
但是通过查看.h文件的属性等都对。
有时虽然添加失败,但编译却成功了。
但可能造成该类的信号槽失效
解决方法 :
查看该项目的.vprj文件用xml编辑器打开,查找qt4.7的描述 一般在最后
删除 再打开项目 可以看到moc文件自动添加到对应的filter了 编译通过。 该类的信号槽 也可以有效执行了