我的意思是在编辑器中使用插入键的方式。
所以有这样的字符串:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
效果将是:
~~~~~~~~~~Hello!~~~~~~~~~~~~~~~~~~
即不改变字符串的长度。
答案 0 :(得分:3)
使用std::string
的{{3}}成员函数的多次重载之一覆盖字符串的一部分,例如:
string str = "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~";
string rep = "Hello!";
cout << str.replace(5, rep.size(), rep) << endl;
您可以在ideone replace
播放此示例。
答案 1 :(得分:0)
最简单的解决方案可能是使用std::copy
适当的迭代器:
std::copy( newText.begin(), newText.end(), str.begin() + n );
确保目标字符串足够大。