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

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

原因分析

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

解决方法

方法1:(最简单)

在类的构造函数中添加上面两行代码,可以解决该类中包含中文编译不过的问题。

cpp 复制代码
QTextCodec *codec = QTextCodec::codecForName("UTF-8-BOM");
QTextCodec::setCodecForLocale(codec);

方法2:

用notepad++ 打开每个包含中文的源码文件,"Encoding"选择UTF-8-BOM编码,然后保存关闭。

相关推荐
顾子茵7 分钟前
c++从入门到精通(六)--特殊工具与技术-完结篇
android·开发语言·c++
byte轻骑兵9 分钟前
【Bluedroid】蓝牙HID DEVICE 报告发送与电源管理源码解析
c++·hid·bluedroid
孞㐑¥10 分钟前
Linux之基础IO
linux·开发语言·c++·经验分享·笔记
mahuifa21 分钟前
ubuntu18.04编译qt5.14.2源码
开发语言·数据库·qt
瓦力wow22 分钟前
c语言 写一个五子棋
c语言·c++·算法
hjjdebug1 小时前
c/c++数据类型转换.
c语言·c++·数据类型变换
熬夜学编程的小王1 小时前
【C++进阶篇】C++容器完全指南:掌握set和map的使用,提升编码效率
c++·set·map
花火QWQ1 小时前
图论模板(部分)
c语言·数据结构·c++·算法·图论
superior tigre2 小时前
C++学习:六个月从基础到就业——C++20:协程(Coroutines)
c++·学习·c++20
superior tigre2 小时前
C++学习:六个月从基础到就业——C++20:概念(Concepts)
c++·学习·c++20