Aracılığıyla paylaş


CObject::GetRuntimeClass

İade CRuntimeClass karşılık gelen bu nesnenin sınıf yapısı.

virtual CRuntimeClass* GetRuntimeClass( ) const;

Dönüş Değeri

Bir işaretçi CRuntimeClass için bu nesnenin sınıf; karşılık gelen yapı hiçbir zaman null.

Notlar

Bir CRuntimeClass her biri için yapı CObject-türetilmiş sınıf. Yapı üyeleri aşağıdaki gibidir:

  • LPCTSTR m_lpszClassName boş sonlandırılmış ASCII sınıf adını içeren bir dize.

  • int m_nObjectSize nesnesinin bayt cinsinden boyutu. Nesne için ayrılan bellek o noktadan veri üyeleri varsa, bu bellek boyutu dahil değil.

  • UINT m_wSchema şema numarasını (– 1 nonserializable sınıfları için). Bkz: IMPLEMENT_SERIAL makro için şema numarasının tanımı.

  • CObject * (pascal * m_pfnCreateObject) () , sınıfın bir nesnesi oluşturur (geçerli sınıfı dinamik oluşturma; destekliyorsa varsayılan kurucu işlev işaretçisi Aksi takdirde, döner null).

  • CRuntimeClass * (pascal * m_pfn_GetBaseClass) () , uygulamanızın mfc afxdll sürümü dinamik olarak bağlı ise, bir işlev işaretçisi verir CRuntimeClass temel sınıfın yapısı.

  • CRuntimeClass * m_pBaseClass mfc, bir işaretçi için uygulamanızın statik olarak bağlantılı olduğunu CRuntimeClass temel sınıfın yapısı.

Bu işlevi kullanmak gerekir IMPLEMENT_DYNAMIC, IMPLEMENT_DYNCREATE, ya da IMPLEMENT_SERIAL class uygulamasındaki makro. Aksi halde yanlış sonuçlar alırsınız.

Örnek

Bkz: CObList::CObList bir listesi için CAge tüm içinde kullanılan sınıfı CObject örnekler.

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

Gereksinimler

Başlık: afx.h

Ayrıca bkz.

Başvuru

CObject sınıfı

Hiyerarşi grafik

CObject::IsKindOf

RUNTIME_CLASS