QString 参数模板不理解

问题描述 投票:0回答:1

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

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

%1 应该替换为 4,%2 应该替换为 5。但是第二个占位符混淆了 C++/Qt,因为占位符不能将 %2 与相邻的 6 分开。

我试过 %{2} 和其他愚蠢的东西,但没有运气。有没有办法在不创建两个语句的情况下实现这一点,在第二个语句中附加字符串的其余部分:

QString("123%1%2").arg("4").arg("6")+QString("6789")
c++ templates qstring
1个回答
0
投票

QString("123%1%%2%789").arg("4").arg("6")

这里,第一个占位符(%1)将被替换为“4”,第二个占位符(%2)将被替换为“6”。它们之间的 %% 将被解释为文字百分号,不会被替换。

这将导致 QString“1234%6789”,它具有所需的替换。

© www.soinside.com 2019 - 2024. All rights reserved.