MFC
MFC(Microsoft基本類庫,Microsoft Foundation Class Library)是微軟公司對龐大的標準Win32 API函式的封裝,提供了圖形環境下應用程式的框架及創建應用程式的組件,通過VC的Wizard功能簡化了Windows應用程式的編寫工作。MFC庫提供了大量的基類供程式設計師根據不同的套用環境進行擴充,允許在編程過程中自定義和擴展應用程式中的類。
MFC具有較好的移植性,可移植於眾多的平台,很好地保持了程式的兼容性。然而MFC並沒有封裝進Win32 API的全部特性,所以有時不得不調用一些Win32 APl函式來實現一些特定功能。
MFC的設計原理
大多數MFC類是從CObject、CCmdTarget和CWnd這3個基類派生的,CCmdTarget派生於CObject類,而CWnd派生於CCmd Target類。從CObject派生的類,具有在運行時獲得對象大小和名字的功能:從CCmdTaxge真派生的類,能夠處理命令訊息;從CWnd派生的類,能控制自己的視窗。
MFC使用方面的優勢
豐富的特性
MFC提供的特性數量之多,令人難以置信。MFC主要支持的特性如下:
●文檔/視圖體系結構;
●多文檔界面(MDl);
●列印以及列印預覽支持;
●使用並創建ActiveX控制項:
●ODBC以及Access資料庫支持:
●Intemet(TCP/IP)編程支持:
●Windows 95/Windows 98/Windows NT常用控制項支持;
●多執行緒支持。
可擴展體系結構
由於MFC是使用C++編寫的,所以你可以利用該語言中的特性,從框架的類中派生自己的自定義類。這樣可以節省大量時間和精力。你無需從頭實現自己的Windows對象,而是依賴MFC經過時間檢驗的代碼庫,再增加自己需要的功能即可。
MFC的分層設計使你能夠根據需要輕鬆擴展框架。MFC中已包括了一些專門化的Windows類型,例如CSplitterWnd,它實現Explorer中所使用的拆分視窗風格。MFC也包括適用於用戶界面元素的類,諸如按鈕和下拉列表以及作業系統元素,例如執行緒和信號量。
需要一個類來代表應用程式中具有特殊用途的視窗嗎?沒問題,你只需從MFC的CWnd中派生自己的自定義類即可。希望實現一個新的用戶界面按鈕風格嗎?請繼續,你只需從CButton中派生自己的按鈕類即可。你是否需要為應用程式中的函式準備一個獨立執行執行緒?請使用MFC函式AfxBeginThread()。在所有這些例子中,你都能夠利用框架已實現的工作,再根據需要進行添加而達到自己的目的。