问题来源:
在QT里 写好了部分界面代码,有.ui 、.h、.cpp等等文件;
然后直接拷贝了这些文件来VS中用 moc.exe等等编译;
问题表现:
生成了 moc_***.cpp,但文件内没有代码,为空,为 0KB;
出错原因:
QT文件的编码和VS内原工程编码不一致。QT文件是Unicode的一种,而VS原工程为 GB2312。
解决办法:
用VS的“高级保存选项”功能将 QT复制过来的文件 更改编码为 GB2312,重新编译;
发现 moc_***.cpp 中出现代码,且代码正常;
问题解决。