setText(tr("Name:"));。 我-6ren">
gpt4 book ai didi

c++ - 防止自己忘记在 tr() 中包含字符串文字

转载 作者:行者123 更新时间:2023-11-27 23:04:05 26 4
gpt4 key购买 nike

Qt 使用 tr() 函数进行国际化,但很容易忘记用它括起一个字符串,例如编写 label->setText("Name:"); 而不是 label->setText(tr("Name:"));

我记得在某处读到过,除非您以某种其他方式(如果我没记错的话,在 QLatin1String 中)明确地包含字符串,否则您可以使 QString 显示错误。我该怎么做?

最佳答案

您可以将QT_NO_CAST_FROM_ASCII 添加到*.pro 文件中的DEFINES。这将阻止从 char* 自动转换。类似地,有一个 QT_NO_CAST_TO_ASCII 可以防止 QStrings 被隐式转换为 char*

参见 http://qt-project.org/doc/qt-5/qstring.html#converting-between-8-bit-strings-and-unicode-strings了解更多详情

关于c++ - 防止自己忘记在 tr() 中包含字符串文字,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24799284/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com