c++ 无法理解QString参数模板

zwghvu4y  于 2023-03-20  发布在  其他
关注(0)|答案(1)|浏览(165)

我有一个带有静态数字的QString模板,其中混合了参数/模板占位符,如%1和%2。例如:

QString("123%1%26789").arg("4").arg("5")

%1应该替换为4,%2应该替换为5。但是第二个占位符混淆了C++/Qt,因为占位符不能将%2与相邻的6分隔开。
我尝试了%{2}和其他愚蠢的事情,但没有运气。有没有方法可以实现这一点,而不创建两个语句,在第二个语句中追加字符串的其余部分:

QString("123%1%2").arg("4").arg("5")+QString("6789")

结果应该是:

123456789
3bygqnnd

3bygqnnd1#

快速字符串(“123%1%%2%789”).参数(“4”).参数(“6”)
此处,第一个占位符(%1)将替换为“4”,第二个占位符(%2)将替换为“6”。它们之间的%%将被解释为文字百分号,不会被替换。
这将产生一个QString“1234%6789”,其中包含所需的替换。

相关问题