Share via


CObject::GetRuntimeClass

반환 된 CRuntimeClass 이 개체의이 클래스에 해당 하는 구조입니다.

virtual CRuntimeClass* GetRuntimeClass( ) const;

반환 값

에 대 한 포인터는 CRuntimeClass 구조에 해당 하는이 개체 클래스입니다. 절대로 NULL.

설명

하나의 CRuntimeClass 구조 마다 CObject-클래스를 파생 합니다. 구조체 멤버는 다음과 같습니다.

  • LPCSTR m_lpszClassName ASCII 클래스 이름이 포함 된 null로 끝나는 문자열입니다.

  • int m_nObjectSize 의 크기 (바이트)에서입니다. 해당 지점에 할당 된 메모리 개체의 데이터 멤버를 포함 하는 경우 해당 메모리의 크기는 포함 되지 않습니다.

  • UINT m_wSchema 스키마 번호 (– nonserializable 클래스에 대 한 1). 참조는 IMPLEMENT_SERIAL 매크로 대 한 설명은 스키마 번호입니다.

  • CObject * (파스칼 * m_pfnCreateObject) () (유효한 클래스 동적 생성; 지만 클래스의 개체를 만드는 기본 생성자 함수 포인터 그렇지 않으면 반환 NULL).

  • CRuntimeClass * (파스칼 * m_pfn_GetBaseClass) () 신청이 AFXDLL 버전의 MFC 동적으로 연결 된 경우에 함수 포인터를 반환 된 CRuntimeClass 구조체의 기본 클래스입니다.

  • CRuntimeClass * m_pBaseClass 응용 프로그램 포인터를 MFC 정적으로 링크 하는 경우는 CRuntimeClass 구조체의 기본 클래스입니다.

이 함수를 사용 해야는 클래스, IMPLEMENT_DYNCREATE, 또는 IMPLEMENT_SERIAL 매크로 클래스 구현에서. 그렇지 않으면 잘못 된 결과 얻을 수 있습니다.

예제

CObList::CObList 에 CAge 클래스 모두에서 사용 CObject 예.

CAge a(21);
CRuntimeClass* prt = a.GetRuntimeClass();
ASSERT(strcmp(prt->m_lpszClassName, "CAge")  == 0);   

요구 사항

헤더: afx.h

참고 항목

참조

CObject 클래스

계층 구조 차트

CObject::IsKindOf

RUNTIME_CLASS