现象
在代码里使用打印输出中文,编译后,查看运行结果。在应用输出窗口看到中文输出的结果为乱码。
#include "mywidget.h"
#include <QApplication>//包含应用程序类的头文件
#include <QLocale>
#include <QTranslator>
#include<iostream>
using namespace std;
//main 程序入口 argc 命令行变量的数量 ar qv 命令行变量的数组
int main(int argc, char *argv[])
{
cout<<"我是中文"<<endl;
//a 应用程序对象,在 Qt 中,应用程序对象有且仅有一个
QApplication a(argc, argv);
QTranslator translator;
const QStringList uiLanguages = QLocale::system().uiLanguages();
for (const QString &locale : uiLanguages) {
const QString baseName = "FirstPrejet01_" + QLocale(locale).name();
if (translator.load(":/i18n/" + baseName)) {
a.installTranslator(&translator);
break;
}
}
//窗口对象 my widget 父类->Qwidget
myWidget w;
//窗口对象默认不会显示, 必须要调用 show 方法显示窗口
w.show();
/