STATIC_DOWNCAST
轉換 (cast) pobject 指標的 class_name 物件。
STATIC_DOWNCAST(class_name, pobject )
參數
class_name
正在轉換為類別的名稱。pobject
滑鼠指標以轉換為變數的指標, class_name 物件。
備註
pobject 必須是 NULL,或指向的物件直接衍生的類別或間接從 class_name。在組建中使用的應用程式的 _DEBUG 前置處理器符號定義之後,該巨集將 ASSERT 如果 pobject 不是 NULL,或如果它指向的物件,並不是"的"中指定的類別 class_name 參數 (請參閱 CObject::IsKindOf)。在非-_DEBUG 的組建中,該巨集執行轉型,而不任何型別檢查。
中指定的類別 class_name 參數必須衍生自CObject ,而且必須使用DECLARE_DYNAMIC和IMPLEMENT_DYNAMIC、 DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE,或DECLARE_SERIAL和IMPLEMENT_SERIAL如本文所述的巨集 CObject 的類別: 從 CObject 衍生出類別。
比方說,您可能會轉換為變數的指標, CMyDoc,被呼叫pMyDoc,指標的 CDocument 使用下列運算式:
CDocument* pDoc = STATIC_DOWNCAST(CDocument, pMyDoc);
如果pMyDoc不是指向物件直接或間接衍生自 CDocument,此巨集將 ASSERT。
需求
標頭: afx.h