局部变量与全局变量的困惑

昨天写一段代码,要加载一个20M的文本,结果竟然跑死了,最后报错

terminate called after throwing an instance of 'std::bad_alloc'

what():  std::bad_alloc

网上搜了一大堆,大都说是new完没有delete造成 内存泄露,可是我压根儿没new啊,全部使用静态变量。

后来发现在在一个十万次的for循环中重复使用stringstream和vector<string>没有清空,愚蠢的错误


可以ss.clear(), v.clear()清空状态,但这样既没有效率也不省内存

使用局部变量会避免这些问题,我原本指望将局部变量提到全局会省内存呢。



将局部变量提到全局,不会省内存,我还是想不通,求路过的各路神仙解答

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章