#pragma once 

#if (defined(_MSC_VER) && _DEBUG)
#define MEM_LEAK_TEST
#endif

#ifdef MEM_LEAK_TEST

void* operator new (size_t size, const char* filename, unsigned int line);
void* operator new[](size_t size, const char* filename, unsigned int line);
void operator delete (void* ptr, const char* filename, unsigned int line);
void operator delete[](void* ptr, const char* filename, unsigned int line);

#define new new(__FILE__, __LINE__)

#endif