2014-11-18 23:08:34 +08:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
void* __new(size_t n, const char* filename,
|
|
|
|
const char* funcname, int lineno);
|
|
|
|
|
|
|
|
//void* __new[](size_t n, const char* filename,
|
|
|
|
// const char* funcname, int lineno);
|
|
|
|
|
|
|
|
void __delete(void* p, const char* filename,
|
|
|
|
const char* funcname, int lineno);
|
|
|
|
|
|
|
|
//void __delete[](void* p, const char* filename,
|
|
|
|
// const char* funcname, int lineno);
|
|
|
|
|
|
|
|
inline void* __cdecl operator new(size_t n)
|
|
|
|
{
|
|
|
|
return ::__new(n, __FILE__, __FUNCTION__, __LINE__);
|
|
|
|
}
|
|
|
|
|
|
|
|
inline void __cdecl operator delete(void *p)
|
|
|
|
{
|
|
|
|
::__delete(p, __FILE__, __FUNCTION__, __LINE__);
|
|
|
|
}
|
|
|
|
|
|
|
|
inline void* __cdecl operator new(size_t n, const char* filename, int lineno)
|
|
|
|
{
|
|
|
|
return ::__new(n, filename, __FUNCTION__, lineno);
|
|
|
|
}
|
|
|
|
|
|
|
|
inline void __cdecl operator delete(void *p, const char* filename, int lineno)
|
|
|
|
{
|
|
|
|
::__delete(p, filename, __FUNCTION__, lineno);
|
|
|
|
}
|
|
|
|
|
|
|
|
//#define NEW(n) (::__new((n), __FILE__, __FUNCTION__, __LINE__))
|
|
|
|
//#define DELETE(p) (::__delete((p), __FILE__, __FUNCTION__, __LINE__))
|