如何使用"%"操作数追加Qstring

McL*_*Lan 2 c++ qstring append

我正在使用操作数尝试.append使用两个double值的QString %.我在QString类参考文档中看到了以下示例,用于使用argdouble,但该示例不包括附加str:

double d = 12.34;
QString str = QString("delta: %1").arg(d);
Run Code Online (Sandbox Code Playgroud)

这是我的代码.它不包含任何运行时错误,但它不会将我的双精度放在%操作数所在的位置,而是将我的%1和%2包括为普通字符串:

double d1 = 0.5,d2 = 30.0
QString str  = "abc";
str.append("%1 def %2").arg(d1).arg(d2);
Run Code Online (Sandbox Code Playgroud)

谢谢

duD*_*uDE 6

试试这个:

double d1 = 0.5,d2 = 30.0
QString str  = "abc";
str.append(QString("%1").arg(d1));
str.append(" def ");
str.append(QString("%1").arg(d2));
Run Code Online (Sandbox Code Playgroud)

[EDITED]关键是,"arg"是类QString的一种方法,必须与它的实例一起使用.在你不工作的例子中,你不这样做.


For*_*veR 5

用这个

str.append(QString("%1:%2").arg(d1, d2));
Run Code Online (Sandbox Code Playgroud)

或者

str.append(QString("%1:%2").arg(d1).arg(d2));
Run Code Online (Sandbox Code Playgroud)