END_CATCH END_CATCH 說明: 標識最後的CATCH或AND_CATCH塊的末尾。 END_MESSAGE_MAP END_MESSAGE_MAP 說明: 使用END_MESSAGE_MAP宏結束使用者的訊息映射定義 IMPLEMENT_DYNAMIC IMPLEMENT_DYNAMIC(class_name,base_class_name) 說明: 通過運行時在串列結構中為動態CObject衍生類別訪問類名和位置來產生必要的C++代碼。在.CPP檔案中使用IMPLEMENT_DYNAMIC宏,接著一次連結結果對象代碼 IMPLEMENT_DYNCREATE IMPLEMENT_DYNCREATE(class_name,base_class_name) 說明: 通過DECLARE_DYNCREATE宏來使用IMPLEMENT_DYNCREATE宏,以允許CObject衍生類別對象在運行時自動建立。主機使 用此功能自動建立對象,例如,但它在序列化過程中從磁碟讀去一個對象時,他在類工具裡加入IMPLEMENT_DYNCREATE宏。若使用者使用 DECLARE_DYNCREATE和IMPLEMENT_DYNCREATE宏,那麼接著使用RUNTIME_CLASS宏和CObject:: IsKindOf成員函數以在運行時確定對象類。若declare_dyncreate包含在定義中,那麼IMPLEMENT_DYNCREATE必須包 含在類工具中。 IMPLEMENT_SERIAL IMPLEMENT_SERIAL(class_name,base_class_name,wSchema) 說明: 通過運行時在串列結構中動態CObject衍生類別訪問類名和位置來建立必要的C++代碼。在.CPP檔案中使用IMPLEMENT_SERIAL宏,然後一次連結結果對象代碼。 ON_COMMAND ON_COMMAND(id,memberFxn) 說明: 此宏通過ClassWizard或手工插入一個訊息映射。它表明那個函數將從一個命令使用者介面(例如一個功能表項目或toolbar按鈕)處理一個命令消 息。當一個命令對象通過指定的ID接受到一個Windows WM_COMMAND訊息時,ON_COMMAND將調用成員函數memberFxn處理此訊息。在使用者的訊息映射中,對於每個菜單或加速器命令(必須被 映射到一個訊息處理函數)應該確實有一個ON_COMMAND宏語句。 ON_CONTROL ON_CONTROL(wNotifyCode,id,memberFxn) 說明: 表明哪個函數將處理一個常規控製表示訊息。控制標識訊息是那些從一個控制夫發送到母視窗的訊息。 ON_MESSAGE ON_MESSAGE(message,memberFxn) 說明: 指明哪個函數將處理一使用者定義訊息。使用者定義訊息通常定義在WM_USER到0x7FF範圍內。使用者定義訊息是那些不是標準Windows WM_MESSAGE訊息的任何訊息。在使用者的訊息映射中,每個必須被映射到一個訊息處理函數。使用者定義訊息應該有一個ON_MESSAGE宏語句。 ON_REGISTERED_MESSAGE ON_REGISTERED_MESSAGE(nmessageVarible,memberFxn) 說明: Windows的RegisterWindowsMesage函數用於定義一個新視窗訊息,此訊息保證在整個系統中是唯一的。此宏表明哪個函數處理登入訊息。變數nMessageViable應以NEAR修飾符來定義。 ON_UPDATE_COMMAND_UI ON_UPDATE_COMMAND_UI(id,memberFxn) 說明: 此宏通常通過ClassWizard被插入一個訊息映射,以指明哪個函數將處理一個使用者介面個更改命令訊息。在使用者的訊息映射中,每個使用者介面更改命令(比訊被映射到一個訊息處理函數)應該有一個ON_UPDATE_COMMAND_UI宏語句。 ON_VBXEVENT ON_VBXEVENT(wNotifyCode,memberFxn) 說明: 此宏通常通過ClassWizard被插入一個訊息映射,以指明哪個函數將處理一個來自VBX控制的訊息。在使用者的訊息映射中每個被映射到一訊息處理函數的VBX控制訊息應該有一個宏語句。 RUNTIME_CLASS RUNTIME_CLASS(class_name) 說明: 使用此宏從c++類民眾擷取運行時類結構。RUNTIME_CLASS為由class_name指定的類返回一個指標到CRuntimeClass結 構。只有以DECLARE_DYNAMIC,DECLARE_DYNCREATE或DECLARE_SERIAL定義的CObject衍生類別才返回到一個 CRuntimeClass結構的指標。 THROW THROW(exception_object_pointer) 說明: 派出指定的異常。THROW中斷程式的運行,把控制傳遞給使用者程式中的相關的CATCH塊。如果使用者沒有提供CATCH塊,那麼控制被傳遞到一個MFC模組,他列印出一個錯誤並終止運行。 THROW_LAST THROW_LAST() 說明: 此宏允許使用者派出一個局部建立的異常。如果使用者試圖排除一個剛發現的異常,那麼一般此異常將溢出並被刪除。使用THROW_LAST,此異常被直接傳送到下一個CATCH處理常式。 TRACE TRACE(exp) 說明: 把一個格式化字串送到傾印裝置,例如,檔案或調試監視器,而提供與printf相似的功能。同MS_DOS下C程式的printf一樣,TRACE宏 是一個在程式運行時跟蹤變數值的方便形式。在DEBUG環境中,TRACE宏輸出到afxDump。在Release版中他不做任何工作。 注釋: 此宏只在MFC的DEBUG版中有效。 TRACE0 TRACE0(exp) 說明: 與TRACE相似,但他把跟蹤字串放在程式碼片段中,而不是DGROUP,因此使用少的DGROUP空間。TRACE0是一組跟蹤宏的一個變體,這些宏可 用於調試輸出。這一組包括TRACE0,TRACE1,TRACE2和TRACE3,這些宏不同在於所取參數的數目不同。TRACE0隻取一個格式化字元 串並可用於簡單簡訊。TRACE1取一格式化字串加上一個變數——一個將轉儲的變數。同樣,TRACE2,TRACE3分別取2個或3個參數(在格 式化字串之後)。如果使用者以便以了應用程式的發行版,那麼它只把資料轉儲到afxDump。 注釋: 此宏只在MFC的DEBUG中有效。 TRACE1 TRACE1(exp,param1) 說明: 參見TRACE0 TRACE2 TRACE2(exp,param1,param2) 說明: 參見TRACE0 TRACE3 TRACE3(exp,param1,param2,param3) 說明: TRY TRY 說明: 使用此宏建立一TRY塊。一個TRY識別一個可排除異常的代碼塊。這些異常在隨後的CATCH和AND_CATCH塊處理。傳遞是允許的:異常可以傳遞一個外部TRY塊,或者忽略它們或者使用THROW_LAST宏。 VERIFY VERIFY(booleanExpression) 說明: 在MFC的DEBUG版中,VERIFY宏計算它的變數值。 如果結果為0,那麼宏列印一個診斷訊息並中止程式。如果條件不為0,那麼什麼工作也不作。 診斷有如下形式: assertion failed in file in line 其中name是源檔案的名字,num是在源檔案中失敗的中止行號。在MFC的Release版中,VERIFY計算運算式值但不列印或中止程式。例如:如 果運算式是個函數調用,那麼調用成功。 |