是否需要清除ostringstream对象?

时间:2017-05-01 13:18:16

标签: c++ ostringstream

我在应用程序中使用ostringstream对象,该应用程序运行很长时间以将调试信息打印到标准输出。我根据命令行arg(例如,详细标志)切换应用程序是否实际打印并清除ostringstream对象。当没有断言详细开关时,我仍然写入ostringstream对象,但我从未清除它。

我想弄清楚这有多糟糕,是否应该更加小心清理对象?是否有任何负面影响,例如使用太多内存?

// example code 
ostringstream oss;
while (1){
    oss << " still alive " << endl;
    if (verbose) { cout << oss.str(); oss.str("") } 
}

1 个答案:

答案 0 :(得分:1)

显然,当你继续在流中插入数据时,它会消耗更多的内存,这在某些时候可能会很多。

清除它会阻止它。