我正在查看我的代码,因为随着时间的推移,我的内存使用量(由Windows报告)略有增加。我已经添加了VS2012的调试功能来测试内存泄漏,但我没有找到。
所以,我正在调查我的任何容器(vector,deque等)是否正在增加。
现在,我正在为每个容器编写手动检查,但我宁愿做一些聪明的事情并在此过程中学习新的东西。但是,我不知道如何开始。
我正在寻找的是一种自动更改容器分配的方法,包括文件和行分配位置等信息,并在调用析构函数时显示。这样我就可以看出是否有任何增加到不成比例的大小。
我希望我的代码不是透明的,有点像检查内存泄漏的“新”修改。
有人能指出我正确的方向吗?
由于
的Henrik
答案 0 :(得分:0)
由于我不知道你的矢量究竟在做什么,我的提示可能太简单了。但是,如果您使用的是支持 shrink_to_fit
的C ++ 11编译器http://www.cplusplus.com/reference/vector/vector/shrink_to_fit/
或许可能有助于不时调用此函数。