重置字符串,同时保持容量
Reset string while keeping capacity
我在这里阅读了很多问题,因此如何完全清除字符串(即重置容量,释放内存)。我的问题恰恰相反;是否有任何可靠的方法来重置字符串(长度),同时保证其容量保持完整?
示例:在循环中重用临时字符串。
如果我做
之类的事情,默认情况下可能会发生这种情况str.clear()
str.reserve(256)
在每个循环迭代中,至少在根据本文的答案中使用Visual Studio时:std :: String在Visual Studio上的特定行为?
但依靠"可能"似乎有些风险。
根据http://en.cppreference.com/w/cpp/string/basic_string/clear clear()
无法免费内部缓冲区,并保持capacity
完整。