1
我有點初學者,並且在Qt中實現tr函數時遇到問題。如果我在Qt類之外使用tr(「字符串」),我會收到錯誤。 我找到的信息,我應該在TR()之前使用的QObject ::,但如果我嘗試我不能在Qt類以外的Qt 5.5中使用tr()
temp += QObject::tr("Example"); // temp is std::string
我收到提示
C2679: binary '+=' : no operator found which takes a right-hand operand of type 'QString' (or there is no acceptable conversion)
又如做到這一點:
QString filename="example.txt";
QFile log(QDir::currentPath() + "//" + filename);
if (log.open(QIODevice::ReadWrite | QIODevice::Append | QIODevice::Text))
{
QTextStream plik(&log);
plik.setCodec("UTF-8");
(...)
plik << QString::fromUtf8(QObject::tr("Example2")); // Error
}
我收到提示
C2665: 'QString::fromUtf8' : none of the 2 overloads could convert all the argument types
任何人都可以幫我解決這個問題嗎?
C2660:'QString :: toUtf8':函數不帶1個參數是否有另一個修正? – km2442
修正了第一種情況。 – AlexanderVX
好的,它的工作原理 - 謝謝。但是我的問題的第一個錯誤呢?我有20個像這樣的錯誤... – km2442