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”
答案 0 :(得分:3)
只需将string1
复制到string2
,然后修改后者:
string2 = string1;
string2.erase(f, 2);