目录
〇.写在前面
若读者朋友们发现问题,请不吝斧正。
1.resize(改变大小)
void resize (size_t n);
void resize (size_t n, char c);
- 如果n小于当前字符串的长度,就保留n个字符,把第n+1个及以后的字符删除。
- 如果n大于当前字符串的长度,保留原来的字符,然后把字符串用c填充到长度为n。
int main()
{
string str("abcd");
str.resize(2,'2');
cout << str << endl;
return 0;
//输出 "ab"
}
2.reserve(改变容量)
首先注意不是翻转的reverse。
void reserve (size_t n = 0);
- 如果n小于当前字符串的长度,什么也不做。不会缩容。
- 如果n大于当前字符串的长度,就扩容,但是不一定会扩容到n,也可能扩容到更大的空间。
注意:reserve不会改变已有字符。
3.assign(字符串截取)
(1) string& assign (const string& str, size_t subpos, size_t sublen);
(2) string& assign (const char* s, size_t n);
举例如下
int main()
{
string str;
string sentence("The cave you fear to enter holds the treasure you seek."