4 回答

TA貢獻1848條經驗 獲得超2個贊
MFC的歷史
開始,Microsoft建立了一個AFX小組,AFX代表Application Framework,即應用程序框架。據說創建該小組原意是為了發布一個Borland C++的OWL的競爭性產品,因為那時侯Borland 公司的應用程序框架OWL(object Windows Language)已經做的相當成功。AFX小組象OWL那樣,提出了一個高度抽象Windows API的一個類庫。
他們采用自頂向下的設計方法,逐步將對象抽象出來,并施加到Windows上。然后,他們試著花了幾個月時間用這個類庫來編寫應用程序,結果發現這個類庫偏離Windows API實在太遠,過分抽象并沒有太大的實用性,相反大大降低了應用程序的效率。
于是,他們干脆放棄了整個AFX類庫,對類庫進行重新設計。這次,他們采用了自底向上的方法,從已有的Windows API著手,將類建立在Windows API對象基礎上,設計出后來成為MFC1.0的一個類庫。但是,你現在仍然可以看到AFX時期的痕跡,許多源程序文件有afx前綴,如afxabort.cpp,afxmem.cpp。MFC延用了許多AFX類庫的宏,因此我們經常會看到以AFX開頭的宏。
AFX小組實際上做了兩件工作:MFC類庫和對MFC的IDE支持(即資源編譯器和操作向導)。在1994年4月份之后,AFX的名字停止使用,該小組成員成為Visual C++開發組的一部分,即現在的MFC小組。
MFC1.0版于1992年同Microsoft C/C++7.0同時發布。它提供了對Windows API簡單的抽象和封裝,還沒有我們現在常用的文檔/視結構特性。但它引入了CObject,通過CArchive的持續化和其他一些MFC中仍然使用的特性,從而奠定了MFC的基礎。
- 4 回答
- 0 關注
- 928 瀏覽
添加回答
舉報