淺析VC++應(yīng)用程序環(huán)境
VC++應(yīng)用程序不僅是一個C++編譯器,而且是一個基于Windows操作系統(tǒng)的可視化集成開發(fā)環(huán)境,隨著其新版本的不斷問世,VC++應(yīng)用程序已成為專業(yè)人員進(jìn)行開發(fā)的首選工具了。
所有講C++的書,都是對C++標(biāo)準(zhǔn)(C99)的解釋;而所有講VC++的書,都是講如何使用微軟的這個IDE(當(dāng)然包括很多和Windows編程相關(guān)的東西,比如Windows API,MFC,如果艱深點,還有DLL,ATL,COM,有些書為了滿足沒有C++基礎(chǔ)的作者,也講一點C++的內(nèi)容)。
VC++應(yīng)用程序基本遵循C++標(biāo)準(zhǔn)(其實兼容的比較差,只有70%多,當(dāng)然不兼容的地方很多程序員用的不多)。學(xué)習(xí)的話,先學(xué)C++語法,可以用VC++來練習(xí);把C++學(xué)好了,可以嘗試Windows編程。
VC++是微軟公司開發(fā)的一個IDE(集成開發(fā)環(huán)境),換句話說,就是使用c++的一個開發(fā)平臺.有些軟件就是這個編出來的...另外還有VB,VF.只是使用不同語言...但是,
VC++是Windows平臺上的C++編程環(huán)境,學(xué)習(xí)VC要了解很多Windows平臺的特性并且還要掌握MFC、ATL、COM等的知識,難度比較大。Windows下編程需要了解Windows的消息機制以及回調(diào)(callback)函數(shù)的原理;MFC是Win32API的包裝類,需要理解文檔視圖類的結(jié)構(gòu),窗口類的結(jié)構(gòu),消息流向等等;COM是代碼共享的二進(jìn)制標(biāo)準(zhǔn),需要掌握其基本原理等等。
VC作為一個主流的開發(fā)平臺一直深受編程愛好者的喜愛,但是很多人卻對它的入門感到難于上青天,究其原因主要是大家對他錯誤的認(rèn)識造成的,嚴(yán)格的來說VC++不是門語言,雖然它和C++之間有密切的關(guān)系,如果形象點比喻的話,可以把C++看作為一種“工業(yè)標(biāo)準(zhǔn)”,而VC++則是某種操作系統(tǒng)平臺下的“廠商標(biāo)準(zhǔn)”,而“廠商標(biāo)準(zhǔn)”是在遵循“工業(yè)標(biāo)準(zhǔn)”的前提下擴展而來的。
VC++應(yīng)用程序的開發(fā)主要有兩種模式,一種是WIN API方式,另一種則是MFC方式,傳統(tǒng)的WIN API開發(fā)方式比較繁瑣,而MFC則是對WIN API再次封裝,所以MFC相對于WIN API開發(fā)更具備效率優(yōu)勢,但為了對WINDOWS開發(fā)有一個較為全面細(xì)致的認(rèn)識,筆者在這里還是以講解WIN API的相關(guān)內(nèi)容為主線。
話說到這里可能更多人關(guān)心的是學(xué)習(xí)VC++需要具備什么條件,為什么對于這扇門屢攻不破呢?要想學(xué)習(xí)好VC必須具備良好的C/C++的基礎(chǔ),必要的英語閱讀能力也是必不可少的,因為大量的技術(shù)文檔多以英文形式發(fā)布。
VC++應(yīng)用程序它大概可以分成三個主要的部分:
1. Developer Studio,這是一個集成開發(fā)環(huán)境,我們?nèi)粘9ぷ鞯?9%都是在它上面完成的,再加上它的標(biāo)題赫然寫著“Microsoft Visual C++”,所以很多人理所當(dāng)然的認(rèn)為,那就是Visual C++了。
其實不然,雖然Developer Studio提供了一個很好的編輯器和很多Wizard,但實際上它沒有任何編譯和鏈接程序的功能,真正完成這些工作的幕后英雄后面會介紹。我們也知道,Developer Studio并不是專門用于VC++應(yīng)用程序的,它也同樣用于VB,VJ,VID等Visual Studio家族的其他同胞兄弟。所以不要把Developer Studio當(dāng)成Visual C++, 它充其量只是Visual C++的一個殼子而已。這一點請切記!
2. MFC。從理論上來講,MFC也不是專用于Visual C++,Borland C++,C++Builder和Symantec C++同樣可以處理MFC。同時,用Visual C++編寫代碼也并不意味著一定要用MFC,只要愿意,用Visual C++來編寫SDK程序,或者使用STL,ATL,一樣沒有限制。
不過,Visual C++本來就是為MFC打造的,Visual C++中的許多特征和語言擴展也是為MFC而設(shè)計的,所以用Visual C++而不用MFC就等于拋棄了Visual C++中很大的一部分功能。但是,Visual C++也不等于MFC。
3. Platform SDK。這才是Visual C++和整個Visual Studio的精華和靈魂,雖然我們很少能直接接觸到它。大致說來,Platform SDK是以Microsoft C/C++編譯器為核心(不是Visual C++,看清楚了),配合MASM,輔以其他一些工具和文檔資料。
上面說到Developer Studio沒有編譯程序的功能,那么這項工作是由誰來完成的呢?是CL,是NMAKE,和其他許許多多命令行程序,這些我們看不到的程序才是構(gòu)成Visual Studio的基石。
【編輯推薦】