如何使用“%”操作数追加Qstring

时间:2013-04-03 11:00:27

标签: c++ append qstring

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

double d = 12.34;
QString str = QString("delta: %1").arg(d);

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

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

谢谢

2 个答案:

答案 0 :(得分: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));

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

答案 1 :(得分:4)

使用此

str.append(QString("%1:%2").arg(d1, d2));

str.append(QString("%1:%2").arg(d1).arg(d2));