我正在编写一个中文软件,并在源文件中嵌入了一些字符串。为了减少运行时开销(嗯,实际上这是过早的优化,因为速度差异可以忽略不计,但我很好奇),当我使用QStringLiteral
时使用中文字符
QString s = QStringLiteral("中文");
屏幕上显示字符串时出现乱码;但如果我只是使用
QString s = "中文";
工作正常。但是后者在运行时而不是编译时构造字符串,所以它稍慢一点。有人可以告诉我如何解决这个问题吗?
我的源文件编码是UTF8,没有BOM;编译器是带有SP1的MSVC 2010 Express。我也试过
#pragma execution_character_set("utf-8")
无济于事。
答案 0 :(得分:3)