你的位置:首页 > ASP.net教程

[ASP.net教程]QString::​arg的用法


1.用法示例1

String str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11").arg("1","2","3","4","5","6","7","8","9"); qDebug() << str << endl;

输出 "1 2 3 4 5 6 7 8 9 %10 %11"

str = QString("%1 %2 %3 %4 %5 %6 %7 %8 %9 %10 %11").arg("1","2","3","4","w","6","7","8","9").arg("a","b");

qDebug() << str << endl; 

输出 "1 2 3 4 w 6 7 8 9 a b"

总结 :arg用来替换参数,要求str都为const QString &类型,同时,arg( )里的参数实现从1个到9个。当多于9个时,可以再追加.arg()来替换参数。

 

2.用法示例2

str=QString("%1 %2 %3 %4").arg("A").arg("B").arg("C").arg("D");

qDebug() << str << endl;

输出 : "A B C D"

str=QString("%4 %3 %2 %1").arg("A").arg("B").arg("C").arg("D");

qDebug() << str << endl;

输出 : "D C B A"
总结 : arg由小到大进行参数替换。

3.用法示例3
str = QString("%1 %2").arg("%1World", "Hello");

qDebug() << str << endl; 

输出 :  "%1World Hello"

str = QString("%1 %2").arg("%1World").arg("Hello");

qDebug() << str << endl;

输出 : "HelloWorld %2"

str = QString("%1 %2").arg("%2World").arg("Hello");

qDebug() << str << endl; 

输出: "HelloWorld Hello"

总结 : 如果替换的参数中存在1%, %2等参数替换符时,当替换下一个arg时,其依然有效,可以进行替换。

并且相同的参数符同时被替换。