其實(shí)生成項目完成之后,我們會(huì )在項目目錄里面發(fā)現一個(gè)readme.txt文件,項目所生成的程序文件在這里都有介紹,不過(guò)一般都是英文的。Application Wizard產(chǎn)生項目的同時(shí),也展現了MFC機制為我們打下的程序框架,更為我們提供了用以擴展的程序。
依據不同的選項,產(chǎn)生的文件也有所不同,以下是Application Wizard產(chǎn)生的標準程序文件(假設項目名稱(chēng)為ExMFC),大致可以分為以下幾類(lèi):
· 工作區文件、項目文件和make文件
· 應用程序源文件和頭文件
· 資源文件
· 預編譯頭文件
· 按可選項增加的AppWizard文件
工作區、項目文件和make文件
ExMFC.dsp — 這是MFC生成的項目文件,它包含當前項目的設置、所包含的文件等信息。
ExMFC.dsw — 這是MFC自動(dòng)生成的工作區文件,它包含當前工作區所包含的項目的信息。
ExMFC.MAK — 這是MFC項目的項目文件,這也是與NMAKE兼容的文件。如果選擇了External make文件可選項,則可人工對它編輯,但不能利用Visual C++許多項目編輯特性。
ExMFC.clw — 這個(gè)文件含有被ClassWizard用來(lái)編輯現有類(lèi)或增加新類(lèi)的信息。ClassWizard還用這個(gè)文件來(lái)保存創(chuàng )建和編輯消息映射和對話(huà)框數據所需的信息,或是創(chuàng )建虛擬成員函數所需的信息。
應用程序源文件和頭文件
ExMFC.h — 這是應用程序的主頭文件,它含有所有全局符號和用于包含其它頭文件的#include偽指令。
ExMFC.cpp — 這個(gè)文件是應用程序的主源文件。它將創(chuàng )建CExMFCApp類(lèi)的一個(gè)對象(從CWinApp派生),并覆蓋InitInstance成員函數。
MainFrm.h,MainFrm.cpp — 這兩個(gè)文件將從CFrameWnd(SDI應用程序)或CMDIFrameWnd(MDI應用程序)派生CMainFrame類(lèi)。如果在A(yíng)ppWizard的Application Options頁(yè)(6步中的第4步)中選擇了對應的可選項的話(huà),CMainFrame類(lèi)將處理工具條按鈕和狀態(tài)條的創(chuàng )建。MAINFRM.CPP文件還含有MFC應用程序提供的默認工具條按鈕的對象ID——叫做buttons數組。
ExMFCDoc.h,ExMFCDoc.cpp — 這些文件從CDocument類(lèi)派生并實(shí)現名為CExMFCDoc的文檔類(lèi),并含有用于初始化文檔、串行化(保存和裝入)文檔和用于調試診斷的一些成員函數的框架。
ExMFCView.h,ExMFCView.cpp — 這些文件派生并實(shí)現名為CExMFCView的視類(lèi),用于顯示和打印文檔數據。CHelloView類(lèi)是從CView或它的派生類(lèi)派生出來(lái)的,含有繪制視和用于調試診斷的一些成員函數框架。
資源文件
ExMFC.rc, Resource.h, ExMFC.rc2 —這是項目的頭文件及其資源文件。資源文件含有一般MFC應用程序的默認菜單定義和加速鍵表、字符串表。它還指定了缺省的About對話(huà)框和一個(gè)圖標文件(res"ExMFC.ico)。資源文件了標準的MFC類(lèi)的資源。如果指定了支持工具條,它還將指定工具條位圖文件(RES"TOOLBAR.BMP)。ExMFC.rc2用于存放Visual Studio不可直接編輯的資源。
預編譯頭文件:STDAFX.CPP,STDAFX.H
這兩個(gè)文件用于建立一個(gè)預編譯的頭文件ExMFC.PCH和一個(gè)預定義的類(lèi)型文件STDAFX.OBJ。由于MFC體系結構非常大,包含許多頭文件,如果每次都編譯的話(huà)比較費時(shí)。因此,我們把常用的MFC頭文件都放在stdafx.h中,如afxwin.h、afxext.h、afxdisp.h、afxcmn.h等,然后讓stdafx.cpp包含這個(gè)stdafx.h文件。這樣,由于編譯器可以識別哪些文件已經(jīng)編譯過(guò),所以stdafx.cpp就只編譯一次,并生成所謂的預編譯頭文件(因為它存放的是頭文件編譯后的信息,故名)。如果讀者以后在編程時(shí)不想讓有些MFC頭文件每次都被編譯,也可以將它加入到stdafx.h中。采用預編譯頭文件可以加速編譯過(guò)程。
好了,到現在你可能對AppWizard產(chǎn)生的程序文件有了一個(gè)很好的了解了,剩下的就是添加自己要完成特定功能的東西了。
聯(lián)系客服