VC中SDK與MFC的區(qū)別淺析
本文淺析了vc中SDK與MFC的區(qū)別,對于初學(xué)VC的朋友有一定的學(xué)習(xí)借鑒價值,詳情如下:
SDK 是指Software Development Kit 軟件開發(fā)包
MFC 是指Microsoft Foundation Classes 微軟函數(shù)類庫
因此MFC是對API函數(shù)的封裝,也算是vc里的SDK
用VC編寫Windows程序有兩種:1. Windwos c方式(SDK),2.C++方式:即對SDK函數(shù)進(jìn)行包裝,如VC的MFC,BCB的OWL等。
SDK編程就是直接調(diào)用Windows的API進(jìn)行編程,平時人們常說"用SDK寫程序"就是指用Windows的API函數(shù)來寫程序,API由上千個API函數(shù)組成(Win95的API就有兩千多個)。而MFC是API的封閉,結(jié)合面向?qū)ο蟪绦蛟O(shè)計的繼承性和多態(tài)性組成一個個的"類",共由一百多個類組成。
盡管MFC比SDK方便,但要深入VC,直接去學(xué)MFC卻是不明智的選擇。只有在熟悉了MFC的運行機制的情況下,才有可能深入下去。所以學(xué)VC最好是先學(xué)用SDK編寫程序,在此期間深入掌握Windows操作系統(tǒng)的工作原理和各API函數(shù)的應(yīng)用,然后再深入MFC。
SDK是基于C語言的,而MFC是基于C++的,這是最根本的區(qū)別。MFC主要封裝的是界面、文件、WinInet和線程等函數(shù)。MFC除了封裝API,最重要的是它的體系結(jié)構(gòu),它所使用的Doc/View結(jié)構(gòu)是SDK中沒有的,這種架構(gòu)是比較特殊的。盡管Doc/View結(jié)構(gòu)不是微軟的發(fā)明,但它是MFC的特色。微軟開發(fā)Windows時使用的是C語言,所以最初設(shè)計SDK時并沒有考慮C++。
相關(guān)文章
詳解如何將Spire.XLS for C++集成到C++程序中
Spire.XLS for C++ 是一個 Excel 庫,供開發(fā)人員在任何類型的 C++ 應(yīng)用程序中操作 Excel 文檔(XLS、XLSX、XLSB 和 XLSM)。 本文演示了如何以兩種不同的方式將 Spire.XLS for C++ 集成到您的 C++ 應(yīng)用程序中2023-03-03簡單了解設(shè)計模式中的裝飾者模式及C++版代碼實現(xiàn)
這篇文章主要介紹了簡單了解設(shè)計模式中的裝飾者模式及C++版代碼實現(xiàn),ConcreteComponent的引用(指針)也可以達(dá)到修飾的功能,需要的朋友可以參考下2016-03-03MFC中動態(tài)創(chuàng)建控件以及事件響應(yīng)實現(xiàn)方法
這篇文章主要介紹了MFC中動態(tài)創(chuàng)建控件以及事件響應(yīng)實現(xiàn)方法,詳細(xì)講解了MFC中動態(tài)創(chuàng)建控件以及事件響應(yīng)的概念與實現(xiàn)方法,具有一定的實用價值,需要的朋友可以參考下2014-10-10