字符串和替换

时间:2016-10-13 12:04:06

标签: c++ c++11

这里有一点代码: itr2=s.replace(itr2-5, itr2+1, newVal.begin(), newVal.end()).begin();
这里begin()返回字符串上的迭代器,在我的例子中,这将是不是从起始字符串开始的字符串' s'。我想知道在replace()之后,我会在副本上引用不是开头或引用。
我想知道s.replace(...)的回归是s的一部分吗?

1 个答案:

答案 0 :(得分:2)

s.replace()将引用返回给s。您的陈述相当于

s.replace(itr2-5, itr2+1, newVal.begin(), newVal.end());
itr2 = s.begin();

没有什么鬼鬼祟祟的事。