日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

【MFC】MFC工程文件详解

發布時間:2024/4/24 编程问答 42 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【MFC】MFC工程文件详解 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

00. 目錄

文章目錄

    • 00. 目錄
    • 01. 概述
    • 02. 解決方案相關文件
    • 03. 工程相關文件
    • 04. 頭文件和源文件
    • 05. 資源文件
    • 06. 預編譯頭文件
    • 07. 編譯目標和中間文件
    • 08. 附錄

01. 概述

用應用程序向導生成框架程序后,我們可以在之前設置的Location下看到以解決方案名命名的文件夾,此文件夾中包含了幾個文件和一個以工程名命名的子文件夾,這個子文件夾中又包含了若干個文件和一個res文件夾,創建工程時的選項不同,工程文件夾下的文件可能也會有所不同。

? 如果已經以Debug方式編譯鏈接過程序,則會在解決方案文件夾下和工程子文件夾下各有一個名為“Debug”的文件夾,而如果是Release方式編譯則會有名為“Release”的文件夾。這兩種編譯方式將產生兩種不同版本的可執行程序:Debug版本和Release版本。Debug版本的可執行文件中包含了用于調試的信息和代碼,而Release版本則沒有調試信息,不能進行調試,但可執行文件比較小。

02. 解決方案相關文件

解決方案相關文件包括解決方案文件夾下的.sdf文件、.sln文件、.suo文件和ipch文件夾。

? .sdf文件和ipch目錄一般占用空間比較大,幾十兆甚至上百兆,與智能提示、錯誤提示、代碼恢復和團隊本地倉庫等相關。如果你覺得不需要則可以設置不生成它們,方法是點擊菜單欄Tools->Options,彈出Options對話框,選擇左側面板中Text Editor->C/C+±>Advanced,右側列表中第一項Disable Database由False改為True就可以了,最后關閉VS再刪除.sdf文件和ipch目錄以后就不會再產生了。但關閉此選項以后也會有很多不便,例如寫程序時的智能提示沒有了。

? .sln文件和.suo文件為MFC自動生成的解決方案文件,它包含當前解決方案中的工程信息,存儲解決方案的設置。

03. 工程相關文件

? 工程相關文件包括工程文件夾下的.vcxproj文件和.vcxproj.filters文件。

? .vcxproj文件是MFC生成的工程文件,它包含當前工程的設置和工程所包含的文件等信息。.vcxproj.filters文件存放工程的虛擬目錄信息,也就是在解決方案瀏覽器中的目錄結構信息。

04. 頭文件和源文件

應用程序向導會根據應用程序的類型(單文檔、多文檔或基于對話框的程序)自動生成一些頭文件和源文件,這些文件是工程的主體部分,用于實現主框架、文檔、視圖等。下面分別簡單介紹下各個文件:

? Test.h:應用程序的主頭文件。主要包含由CWinAppEx類派生的CTestApp類的聲明,以及CTestApp類的全局對象theApp的聲明。

? Test.cpp:應用程序的主源文件。主要包含CTestApp類的實現,CTestApp類的全局對象theApp的定義等。

? MainFrm.h和MainFrm.cpp:通過這兩個文件從CFrameWndEx類派生出CMainFrame類,用于創建主框架、菜單欄、工具欄和狀態欄等。

? TestDoc.h和TestDoc.cpp:這兩個文件從CDocument類派生出文檔類CTestDoc,包含一些用來初始化文檔、串行化(保存和裝入)文檔和調試的成員函數。

? TestView.h和TestView.cpp:它們從CView類派生出名為CTestView的視圖類,用來顯示和打印文檔數據,包含了一些繪圖和用于調試的成員函數。

? ClassView.h和ClassView.cpp:由CDockablePane類派生出CClassView類,用于實現應用程序界面左側面板上的Class View。

? FileView.h和FileView.cpp:由CDockablePane類派生出CFileView類,用于實現應用程序界面左側面板上的File View。

? OutputWnd.h和OutputWnd.cpp:由CDockablePane類派生出COutputWnd類,用于實現應用程序界面下側面板Output。

? PropertiesWnd.h和PropertiesWnd.cpp:由CDockablePane類派生出CPropertiesWnd類,用于實現應用程序界面右側面板Properties。

? ViewTree.h和ViewTree.cpp:由CTreeCtrl類派生出CViewTree類,用于實現出現在ClassView和FileView等中的樹視圖

05. 資源文件

一般我們使用MFC生成窗口程序都會有對話框、圖標、菜單等資源,應用程序向導會生成資源相關文件:res目錄、Test.rc文件和Resource.h文件。

? res目錄:工程文件夾下的res目錄中含有應用程序默認圖標、工具欄使用圖標等圖標文件。

? Test.rc:包含默認菜單定義、字符串表和加速鍵表,指定了默認的About對話框和應用程序默認圖標文件等。

? Resource.h:含有各種資源的ID定義。

06. 預編譯頭文件

MFC程序的文件都要包含afxwin.h等文件,如果每次都編譯一次則會大大減慢編譯速度。所以把常用的MFC頭文件都放到了stdafx.h文件中,然后由stdafx.cpp包含stdafx.h文件,編譯器對stdafx.cpp只編譯一次,并生成編譯之后的預編譯頭Test.pch,大大提高了編譯效率。

07. 編譯目標和中間文件

如果是Debug方式編譯,則會在解決方案文件夾和工程文件夾下都生成Debug子文件夾,而如果是Release方式編譯則生成Release子文件夾。

? 工程文件夾下的Debug或Release子文件夾中包含了編譯鏈接時產生的中間文件,解決方案文件夾下的Debug或Release子文件夾中主要包含有應用程序的可執行文件。

08. 附錄

總結

以上是生活随笔為你收集整理的【MFC】MFC工程文件详解的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。