Sdílet prostřednictvím


Nový CObject::operator

Pro verzi knihovny operátor nové přidělení paměti optimální provádí způsobem, který je podobný 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  
);

Poznámky

Ladicí verze operátor nové se účastní programu Sledování přidělení určené ke zjištění nevracení paměti.

Pokud řádek kódu

#define new DEBUG_NEW

před vaší implementace v.CPP souboru pak druhou verzi nové bude použit, ukládání název souboru a řádek číslo přidělené bloku pro vykazování později.Nemusíte starat o poskytnutí dodatečných parametrů; Makro stará o který pro vás.

I v případě, že nepoužíváte DEBUG_NEW v režimu ladění detekce nevrácení stále získat, ale bez hlášení zdrojového souboru číslo řádku popsané výše.

[!POZNÁMKA]

Pokud potlačíte tento operátor musí také přepsat Odstranit.Nepoužívejte standardní knihovny _new_handler funkce.

Příklad

Viz CObList::CObList seznam CAge třídy v CObject příklady.

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);
}

Požadavky

Záhlaví: afx.h

Viz také

Referenční dokumentace

Třída CObject

Diagram hierarchie

Odstranit CObject::operator