c++ - std::string erase 删除最后一个字母

标签 c++ string

我想为游戏输入一些内容,然后在按退格键后删除字符串中的最后一个字母。我不确定是否应该执行 text.end -1+1end 来执行此操作:

if (GetAsyncKeyState(VK_BACK))
    text.erase(text.end - 1, text.end);

最佳答案

std::string 实际上有一个 pop_back()方法!所以你可以这样做:

if (GetAsyncKeyState(VK_BACK) && !text.empty()) { text.pop_back(); }

关于c++ - std::string erase 删除最后一个字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52105416/

相关文章:

c++ - 为什么没有int128_t?

c - 如何比较两个文件的字符串?

c - 提取字符串的两个数字字符并将它们放入一个整数中(C 编程)

string - matlab向数字向量的每个元素添加一个字符串

SQL 执行搜索/替换搜索

c++ - 未调用 boost spirit 语义 Action

c++ - 如何将 C++ 映射传递到 RTI DDS connext 发布者并在 RTI 订阅者处接收

c++ - 字符串流到数组

c++ - 有什么方法可以检测 QObject 是否属于 "dead"QThread?

java - 评估后缀表达式,例如