0

我的意思是在编辑器中打开插入键的方式。

所以有这样的字符串:

~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

效果将是:

~~~~~~~~~~Hello!~~~~~~~~~~~~~~~~~~

那就是不改变字符串的长度。

4

2 回答 2

3

std::string使用的成员函数的几个重载之一来覆盖字符串的一部分replace,例如:

    string str = "~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~";
    string rep = "Hello!";
    cout << str.replace(5, rep.size(), rep) << endl;

你可以在 ideone [link]上玩这个例子。

于 2012-05-17T18:09:36.780 回答
0

最简单的解决方案可能是使用std::copy适当的迭代器:

std::copy( newText.begin(), newText.end(), str.begin() + n );

只要确保目标字符串足够大。

于 2012-05-17T18:49:13.987 回答