CObject::operator new

对库的发布版本,运算符 new 执行一最佳内存分配一些类似于 malloc

void* PASCAL operator new( 
   size_t nSize  
); 
void* PASCAL operator new( 
   size_t, 
   void* p  
); 
void* PASCAL operator new( 
   size_t nSize, 
   LPCSTR lpszFileName, 
   int nLine  
);

备注

在调试版本,运算符 new 参与设计的分配监视模式检测内存泄漏。

如果使用代码行

#define new DEBUG_NEW

在任何一次在.CPP文件的实现之前,然后将使用 new 的第二个版本,存储文件名,并在分配的行号最新报告块。 不必担心提供额外的参数;宏负责表示您的。

即使您不使用 DEBUG_NEW 仍调试模式,则会泄漏检测,但,而不会描述的源文件行号报告顶部。

备注

如果重写此运算符,您还必须重写 delete。不要使用标准库 _new_handler 功能。

示例

提供用于 CObject 示例的列表 CAge 选件类参见 CObList::CObList

void* CAge::operator new(size_t nSize)
{
   return malloc(nSize);
}

void* CAge::operator new(size_t nSize, LPCSTR lpszFileName, int nLine)
{
   UNREFERENCED_PARAMETER(lpszFileName);
   UNREFERENCED_PARAMETER(nLine);
   return malloc(nSize);
}

要求

Header: afx.h

请参见

参考

CObject Class

层次结构图

CObject::operator delete