C++ string resize与reserve区别

   2024-10-06 8600
核心提示:resize()函数用于改变字符串的大小,可以增加或者减少字符串的长度。当增加长度时,新添加的字符会用指定的字符填充;当减少长度

resize()函数用于改变字符串的大小,可以增加或者减少字符串的长度。当增加长度时,新添加的字符会用指定的字符填充;当减少长度时,超出部分的字符会被截断。

示例:

std::string str = "hello";str.resize(8, '!');// str = "hello!!!"
reserve()函数用于预留字符串的存储空间,但不会改变字符串的长度。这样做可以减少因为频繁增加字符而导致的重新分配内存的开销,提高性能。

示例:

std::string str;str.reserve(10);// str的存储空间被预留为10个字符,但实际长度仍为0

总结:使用resize()函数会改变字符串的长度,而使用reserve()函数只是预留了存储空间,并不改变字符串的长度。

 
举报打赏
 
更多>同类物流大全
推荐图文
推荐物流大全
点击排行

网站首页  |  关于我们  |  联系方式 | 网站留言    |  赣ICP备2021007278号