你如何乘以一个 QString,让它自己重复 n 次?

How do you multiply a QString, so it repeats itself n times?

我需要我的字符串重复 n 次,如下所示:

QString s("Dog");
qDebug() << s * 3;
"DogDogDog"

我知道你可以用单个 char 来做到这一点,但我不知道如何用字符串来做到这一点,而不求助于创建这样的 for 循环:

https://paste.fedoraproject.org/300131/94336814/

有捷径吗?

QString 根本没有这样的运算符(请参阅 documentation),因此您不能使用 operator* 来做到这一点。

无论如何,QString 有一个有趣的方法叫做 repeated
我引用了文档,非常详尽:

Returns a copy of this string repeated the specified number of times.

If times is less than 1, an empty string is returned.

它遵循一个例子,再次来自官方文档:

QString str("ab");
str.repeated(4); // returns "abababab"

我想这可以解决您的问题,而且它似乎是可用的更简洁的解决方案。