将字符串的一部分保存在另一个字符串中但保留原始字符串。 C ++

时间:2013-11-25 11:16:34

标签: c++ string

string2 = string1.erase(f, 2);

我正在尝试根据string1的一部分为字符串2赋值,该字符串必须被擦除而不会实际影响string1。

似乎.erase()成员函数在为字符串2赋值之前首先更改string1。

例如,如果

string1 = "A4";
f = 0;

string2应设置为“”,string1仍为“A4”

如果

string1 = "A4B4C1"
f = 2

string2应设置为“A4C1”,string1仍为“A4B4C1”

1 个答案:

答案 0 :(得分:3)

只需将string1复制到string2,然后修改后者:

string2 = string1;
string2.erase(f, 2);