【发布时间】:2013-10-15 16:56:33
【问题描述】:
Visual Studio 2012 告诉我以下程序存在内存泄漏。这是正确的吗?如果是这样,在使用(例如)静态向量时如何避免内存泄漏?
#include <crtdbg.h>
#include <vector>
struct A {
static std::vector<int> a;
};
std::vector<int> A::a;
int main()
{
_CrtDumpMemoryLeaks();
return 0;
}
【问题讨论】:
-
它正在报告“泄漏”,因为您调用它为时过早。如果您删除对
_CrtDumpMemoryLeaks的调用并在调试中运行,您会收到任何泄漏报告吗? -
@RogerRowland 如果我错了,请纠正我,但这不是生成内存泄漏报告的必要条件吗?
标签: c++ visual-studio-2012 memory-leaks static