STATIC_DOWNCAST
out 陣列指標的轉換 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** 組建,巨集執行轉型,沒有任何型別檢查。
必須衍生自 CObject 在 class_name 參數指定的類別,而且必須使用 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。
需求
Header: afx.h