测试环境
Win11 + AMD R9 + Visual Studio 2022 + QT 6.2.1
Q1:Visual Studio 环境生成报错
默认设置生成WidgetAPP后VS会报一大堆错误,进行以下设置后可以正常生成(不能消除所有错误)
-
解决方案属性 → 常规 → C++标准 改为 "ISO C++ 17 标准"
-
解决方案属性 → 命令行 → 其他选项添加 /Zc:__cplusplus
Q2:不能通过Codec来设置中文编码
-
QT5中删除了以下代码
QTextCodec::setCodecForTr(...)
QTextCodec::setCodecForCStrings(...)
QTextCodec::setCodecForLocale(...)
-
QT6中直接移除了整个了QTextcodec库
-
可以通过安装QT5兼容模块,然后在QTCreator中配置pro文件来获得该库
greaterThan(QT_MAJOR_VERSION, 5): QT += core5compat
-
QT5及其以后版本,文件将默认使用UTF-8编码
-
Visual Studio无法配置兼容模块,无法使用上述代码,也不能设置UTF-8
-
在C++11以后的代码中,字符串可以用以下形式来声明为u8</