有没有办法在 C++ 中增加 QString - 比如:
QString str("a");
str++;
qDebug()<<a; //Here i want letter "b"
编辑:是的,基本上我想增加一个字母,但增加更长的字符串会很好。
你不能真正增加一个字符串,因为你首先必须定义它是如何工作的。例如,值将环绕在哪里。
你可以增加字符,但即使这样也只适用于有意义的字符序列:
str[0].unicode()++;
编辑:反应 OP 评论
如果您只想在场景之间切换,这是您要使用的代码:
enum Scenarios { ScenarioOne, ScenarioTwo, ScenarioThree, ScenariosCount };
Scenarios var = ScenarioOne;
var++;
您不能递增或递减 QString,因为没有为该类定义 ++ 和 -- 运算符,并且对于递增字符串可能意味着什么没有明确的概念(虽然您可能很清楚,但不清楚足以使其成为标准 Qt 库的一部分)。
你可以做的是创建一个 QString 的子类,然后实现 operator++() 和 operator--()。使用这样的子类,您将保留标准 QString 的所有功能,同时让它的行为与您希望的递增和递减完全一样。
您可以使用每个字符的ascii值并将它们连接到字符串