Usuń CObject::operator
Dla wersji biblioteki operator usunąć zwalnia pamięć przydzielona przez operatora Nowy.
void PASCAL operator delete(
void* p
);
void PASCAL operator delete(
void* p,
void* pPlace
);
void PASCAL operator delete(
void* p,
LPCSTR lpszFileName,
int nLine
);
Uwagi
W wersji debugowej operator usunąć uczestniczy w systemie monitorowania alokacji przeznaczone do wykrywania przecieków pamięci.
Jeśli używasz wiersza kodu
#define new DEBUG_NEW
przed jakimkolwiek swoje implementacji w.CPP pliku następnie trzecia wersja usunąć będą stosowane, przechowywanie nazwę i numer wiersza w zaalokowanym bloku za zgłoszenie później.Nie trzeba się martwić o dostarczenie dodatkowych parametrów; Makro zajmuje, dla Ciebie.
Nawet jeśli nie używasz DEBUG_NEW w trybie debugowania, nadal uzyskać wykrywania przecieków, ale bez raportowania numer wiersza źródłowego pliku opisanych powyżej.
Jeżeli operatorzy Nowy i usunąć, przepada tej możliwości diagnostycznych.
Przykład
Zobacz CObList::CObList listę CAge klasy wykorzystywane w CObject przykłady.
void CAge::operator delete(void* p)
{
free(p);
}
void CAge::operator delete(void *p, LPCSTR lpszFileName, int nLine)
{
UNREFERENCED_PARAMETER(lpszFileName);
UNREFERENCED_PARAMETER(nLine);
free(p);
}
Wymagania
Nagłówek: afx.h