一开始做43题的时候,逻辑错乱,虽然最后写成了,但是代码很复杂。看了9.5.3节的知识后,发现一个简单的实现:
void repla(string & s, string & oldval, string & newval) {
if (!s.empty())
{
while (s.find(oldval) < s.size()) {
auto pos = s.find(oldval);
s.replace(pos, oldval.size(), newval);
}
}
cout << s << endl;
}