AfxCheckMemory
Funkcja ta sprawdza poprawność puli pamięci i drukuje komunikaty o błędach, zgodnie z wymaganiami.
BOOL AfxCheckMemory( );
Wartość zwracana
Niezerowa, jeśli żadne błędy pamięci; 0 inaczej.
Uwagi
Jeśli funkcja wykryje nie związanej z uszkodzeniem pamięci, drukuje nothing.
Zaznaczone wszystkich bloków pamięci aktualnie przydzielonych na stercie, łącznie z tymi przydzielone przez Nowy , ale nie te przydzielone przez bezpośrednie wywołania allocators pamięci podstawowej, takich jak malloc funkcji lub działanie funkcji GlobalAlloc funkcji systemu Windows.Jeżeli stwierdzono, że każdy blok ulec uszkodzeniu, wiadomość jest drukowana w danych wyjściowych debugera.
Jeśli uwzględnić wiersz
#define new DEBUG_NEW
w module programu, następnie wezwań do AfxCheckMemory Pokaż nazwę i numer wiersza, gdy przydzielono pamięć.
[!UWAGA]
Jeśli moduł zawiera jeden lub więcej implementacje klasy możliwy do serializacji, a następnie należy umieścić #define linii po ostatnim IMPLEMENT_SERIAL wywołania makra.
Ta funkcja działa tylko w wersji programu Debug MFC.
Przykład
CAge* pcage = new CAge(21); // CAge is derived from CObject.
Age* page = new Age(22); // Age is NOT derived from CObject.
*(((char*)pcage) - 1) = 99; // Corrupt preceding guard byte
*(((char*)page) - 1) = 99; // Corrupt preceding guard byte
AfxCheckMemory();
Wymagania
Nagłówek: afx.h