作为一个跨平台的C++图形界面库,Qt现在正受到越来越多的朋友喜爱。不过,许多新学Qt的朋友常常发现一个奇怪的现象,就是自己的程序明明是正确的,却在Qt中怎么也通不过编译。这是怎么回事,又该如何解决呢?
相比VS,Qt目前对中文的支持显得不是那么“友好”。如果我们的工程路径中含有中文字符,就会出现莫名其妙地的编译错误。
例如,我将一个工程放置在一个中文目录下,然后打开Qt Creator进行编译,结果就出现了错误提示,说找不到文件。
我将中文目录名改为英文后,程序成功编译并正常运行。
在此特别提醒大家注意,如果目录名中含有英文空格,是可以正常编译的。
但是如果含有全角空格就不行了,而且此时也不提示找不到文件,仅是无法编译。由于空格是半角还是全角肉眼根本无法分辨,所以希望大家高度重视,如无必要,目录名最好不要用空格。
在开发过程中,有时我们可能会对工程进行全面修改。例如,修改了UI文件的名称,并且在代码中也做了相应的调整,但就是无法通过编译。
这时,我们重新编译时需要先清理原有的构建项目,然后进行编译,而不要图方便直接点击左下方的运行按钮进行编译运行。 要想清理原有构建项目并重新编译,正确方法是点击菜单“构建”-“重新构建项目”。这时,Qt将自动清除原有构建项目,然后重新编译工程。