CObject::GetRuntimeClass
Zwraca CRuntimeClass strukturę odpowiadającą klasa tego obiektu.
virtual CRuntimeClass* GetRuntimeClass( ) const;
Wartość zwracana
Wskaźnik do CRuntimeClass strukturze tego obiektu klasy; nigdy nie NULL.
Uwagi
Istnieje CRuntimeClass struktury dla każdego CObject-klasy.Członkowie struktury są następujące:
LPCSTR m_lpszClassName ciąg zawierający nazwę klasy ASCII, zakończony znakiem null.
int m_nObjectSize rozmiar obiektu, w bajtach.Jeśli obiekt ma członków danych odnoszących się do alokacji pamięci, rozmiaru tej pamięci nie jest włączone.
UINT, m_wSchema numer schematu (– 1 dla klasy nonserializable).Zobacz IMPLEMENT_SERIAL makro opis numer schematu.
CObject * (PASCAL * m_pfnCreateObject) () wskaźnik funkcji konstruktora domyślnego, który tworzy obiekt klasy (prawidłowa tylko wtedy, gdy klasa obsługuje tworzenie dynamicznych; w przeciwnym razie zwraca NULL).
CRuntimeClass * (PASCAL * m_pfn_GetBaseClass) () aplikacja dynamicznie połączone z AFXDLL wersję biblioteki MFC, wskaźnik do funkcji zwracającą CRuntimeClass strukturę klasy podstawowej.
CRuntimeClass * m_pBaseClass Jeśli aplikacja jest połączony statycznie MFC wskaźnik do CRuntimeClass strukturę klasy podstawowej.
Ta funkcja wymaga korzystania z IMPLEMENT_DYNAMIC, IMPLEMENT_DYNCREATE, lub IMPLEMENT_SERIAL makro w implementacji klasy.W przeciwnym razie otrzymasz niepoprawnych wyników.
Przykład
Zobacz CObList::CObList listę CAge w całej klasy CObject przykłady.
CAge a(21);
CRuntimeClass* prt = a.GetRuntimeClass();
ASSERT(strcmp(prt->m_lpszClassName, "CAge") == 0);
Wymagania
Nagłówek: afx.h