1 代碼示例
#ifdef _DEBUG
#define DEBUG_CLIENTBLOCK new( _CLIENT_BLOCK, __FILE__, __LINE__)
#else
#define DEBUG_CLIENTBLOCK
#endif
#define _CRTDBG_MAP_ALLOC
#include <crtdbg.h>
#ifdef _DEBUG
#define new DEBUG_CLIENTBLOCK
#endif
#include <iostream>
#include <vector>
#include <string>
using namespace std;
class Example
{
public:
Example();
Example(int newIndex);
virtual ~Example();
int m_Index;
};
Example::Example()
{
}
Example::Example(int newIndex)
{
m_Index = newIndex;
}
Example::~Example()
{
}
int main()
{
std::vector<Example*> MyTestMap;
for (unsigned int i = 0; i < 10; ++i)
{
std::string tempStr = std::to_string(i);
Example* pExample = new Example(i);
MyTestMap.push_back(pExample);
}
for (int i = 0; i < MyTestMap.size(); ++i)
{
delete MyTestMap[i];
MyTestMap[i] = NULL;
}
MyTestMap.clear();
MyTestMap.shrink_to_fit();
getchar();
_CrtDumpMemoryLeaks();
return 0;
}