C++ 在保持容量的同时重置字符串

C++ 在保持容量的同时重置字符串,c++,string,C++,String,我在这里读了很多关于如何完全清除字符串的问题(即重置容量、释放内存)。我的问题恰恰相反;有没有可靠的方法来重置字符串(长度),同时保证其容量保持不变 示例:在循环中重用临时字符串 如果我这样做,默认情况下可能会发生这种情况 str.clear() str.reserve(256) 在每次循环迭代中,至少在使用Visual Studio时,根据本文的答案: 但是依赖“可能”似乎有点冒险。根据clear()的说法,它不能释放内部缓冲区,并保持容量的完整性。哈,它是这么说的。我想我甚至不必打电话给s

我在这里读了很多关于如何完全清除字符串的问题(即重置容量、释放内存)。我的问题恰恰相反;有没有可靠的方法来重置字符串(长度),同时保证其容量保持不变

示例:在循环中重用临时字符串

如果我这样做,默认情况下可能会发生这种情况

str.clear()
str.reserve(256)
在每次循环迭代中,至少在使用Visual Studio时,根据本文的答案:


但是依赖“可能”似乎有点冒险。

根据
clear()
的说法,它不能释放内部缓冲区,并保持
容量的完整性。

哈,它是这么说的。我想我甚至不必打电话给str.reserve(256),它将被保留。在这里发布之前,我应该更好地查看文档。。。