📜  C++中的std :: 字符串:: erase(1)

📅  最后修改于: 2023-12-03 14:39:57.757000             🧑  作者: Mango

C++中的std::字符串::erase

在C++中,std::字符串::erase是一种用于删除字符串中字符的函数。它可以删除一个给定范围内的字符,从而缩短字符串的长度。此函数的语法如下:

string& erase(size_t pos = 0, size_t len = npos);

其中,pos参数表示要删除的第一个字符在字符串中的位置,len参数表示要删除的字符数。默认情况下,pos为0,len为字符串末尾。

例如,以下示例使用std::字符串::erase函数删除字符串中位置3开始的前两个字符:

#include <iostream>
#include <string>

using namespace std;

int main() {
    string str = "Hello World!";
    str.erase(3, 2);
    cout << str << endl;
    return 0;
}

输出:

Helo World!

在示例中,'e'和'l'被删除了。

此外,使用erase函数在字符串的末尾删除一个字符也是非常方便和常见的:

str.erase(str.size() - 1);

这将删除字符串中的最后一个字符。

此外,也可以结合字符串中的其他函数来使用此函数,例如:

string str = "Hello World!";
int pos = str.find_first_of(" ");
str.erase(0, pos + 1);

该示例使用str.find_first_of函数在字符串中查找第一个空格,并使用str.erase函数删除空格之前的所有字符。

总之,std::字符串::erase函数是非常有效和有用的,因为它可以轻松地缩小字符串的长度,并在需要的时候删除字符。