Uwaga
Dostęp do tej strony wymaga autoryzacji. Może spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Biblioteki Microsoft Foundation Class dostarcza wielu diagnostyczne usług, które ułatwiają debugowanie programów łatwiejsze.Te usługi diagnostyczne zawierać makra i funkcje globalne, które pozwalają śledzić swój program pamięci alokacji, Zrzuć zawartość obiektów w czasie wykonywania i wydrukować komunikaty debugowania w czasie wykonywania.Makra i funkcje globalne dla usług diagnostycznych są podzielone na następujące kategorie:
Ogólne makra diagnostyczne
Podstawowe funkcje diagnostyczne i zmiennych
Obiekt funkcji diagnostycznych
Te makra i funkcje są dostępne dla wszystkich klas pochodzące z CObject w wersji Debug i Release MFC.Jednakże, wszystkie z wyjątkiem DEBUG_NEW i Sprawdź nic nie w wersji wydania.
W bibliotece programu Debug wszystkich bloków alokacji pamięci są na równi z serii "guard bajtów." Jeśli tych bajtów jest zakłócany przez wadliwe pamięci zapisu, procedur diagnostycznych może zgłosić problem.Czy uwzględnić wiersz:
#define new DEBUG_NEW
w pliku implementacji wszystkich wywołań Nowy będą przechowywane nazwy pliku i numerem wiersza którym nastąpiło alokacji pamięci.Funkcja CMemoryState::DumpAllObjectsSince będą wyświetlane te dodatkowe informacje to pozwala zidentyfikować przecieki pamięci.Należy się także odnieść do klasy CDumpContext dodatkowe informacje na temat diagnostyczne dane wyjściowe.
Ponadto biblioteki wykonawczej C obsługuje również zestaw funkcji diagnostycznych używanych do debugowania aplikacji.Aby uzyskać więcej informacji, zobacz Debugowania procedur w Skorowidzu Run-Time Library.
Makra diagnostyczne ogólne MFC
Drukuje wiadomość i następnie przerywa program określony wyrażenie ma wartość FALSE w wersji debugowej biblioteki. |
|
Testy, które obiekt jest obiektem określonej klasy lub klasy pochodzącej od określonej klasy. |
|
Testy wewnętrzne ważności obiektu, wywołując jego AssertValid funkcji składowej; Zazwyczaj nadpisane przez CObject. |
|
Dostarcza nazwę pliku i numerem wiersza dla wszystkich przydziałów obiektu w trybie debugowania jako pomocy w znalezieniu przecieki pamięci. |
|
Podobny do ASSERT , ale nie sprawdza wartość wyrażenia; przydatne dla kodu, należy wykonać tylko w trybie debugowania. |
|
Zawiera printf-zdolność w wersji debugowej biblioteki, np. |
|
Podobny do ASSERT , ale oblicza wyrażenie w wersji z biblioteki, jak również w wersji Debug. |
Zmienne diagnostyczne ogólne MFC i funkcje
Zmienna globalna, która wysyła CDumpContext informacji do okna danych wyjściowych debugera lub terminal debugowania. |
|
Zmienna globalna, która steruje zachowaniem debugowania program przydzielania pamięci. |
|
Zmienna globalna używane do testowania przekazany SCODE Aby sprawdzić, czy błąd i, jeśli tak, wygeneruje odpowiedni komunikat. |
|
Sprawdza integralność wszystkich aktualnie przydzielonej pamięci. |
|
Jeśli wywoływana, podczas gdy w debugerze, zrzuca stan obiektu podczas debugowania. |
|
Generowanie obrazu bieżącego stosu.Ta funkcja jest zawsze połączony statycznie. |
|
Włącza zrzut przeciek pamięci. |
|
Włącza lub wyłącza śledzenie pamięci. |
|
Sprawdza prawidłowo przydzielany blok pamięci. |
|
Sprawdza, czy w jego granicach zakresu adresów pamięci. |
|
Określa, czy wskaźnik na ciąg jest prawidłowy. |
|
Włącza wywołujący funkcję na każdej alokacji pamięci. |
Funkcji diagnostycznych obiektu MFC
Wykonuje funkcję na wszystkich CObject-pochodnych klas, które obsługują kontrola typów w czasie wykonywania. |
|
Wykonuje funkcję na wszystkich CObject-pochodzących z obiektów, które zostały przydzielone z Nowy. |