彻底解决QT5 中文编译不过问题

在windows平台使用Qt5开发时,会出现源码(.cpp或者qml)中包含中文,导致编译不通过,具体的错误代码见下图:
在这里插入图片描述

原因分析

出现错误的原因是windows下,QT默认只使用“UTF-8”的编码方式,而中文字体需要“UTF-8-BOM”格式。

解决方法

方法1:(最简单)
在类的构造函数中添加上面两行代码,可以解决该类中包含中文编译不过的问题。

QTextCodec *codec = QTextCodec::codecForName("UTF-8-BOM");
QTextCodec::setCodecForLocale(codec);

方法2:
用notepad++ 打开每个包含中文的源码文件,“Encoding”选择UTF-8-BOM编码,然后保存关闭。
在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/PRML_MAN/article/details/114019757