?? mfc
字號:
<P align=justify>定義了各種資源ID </P></TD></TR>
<TR>
<TD vAlign=top width="18%" rowSpan=2>
<P align=justify>t.h </P></TD>
<TD vAlign=top width="82%" rowSpan=2>
<P align=justify>#include "resource.h"</P>
<P align=justify>定義了從CWinApp派生的應用程序對象CTApp </P></TD></TR>
<TR></TR>
<TR>
<TD vAlign=top width="18%">
<P align=justify>childfrm.h </P></TD>
<TD vAlign=top width="82%">
<P align=justify>定義了從CMDIChildWnd派生的文檔框架窗口對象CTChildFrame </P></TD></TR>
<TR>
<TD vAlign=top width="18%">
<P align=justify>mainfrm.h </P></TD>
<TD vAlign=top width="82%">
<P align=justify>定義了從CMDIFrameWnd派生的框架窗口對象CMainFrame </P></TD></TR>
<TR>
<TD vAlign=top width="18%" height=13>
<P align=justify>tdoc.h </P></TD>
<TD vAlign=top width="82%" height=13>
<P align=justify>定義了從CDocument派生的文檔對象CTDoc </P></TD></TR>
<TR>
<TD vAlign=top width="18%">
<P align=justify>tview.h </P></TD>
<TD vAlign=top width="82%">
<P align=justify>定義了從CView派生的視圖對象CTView </P></TD></TR></TBODY></TABLE>
<P></P>
<P> </P>
<P align=center>表1-2 AppWizard所生成的實現文件</P>
<P align=center></P>
<P align=left>
<TABLE cellSpacing=1 cellPadding=7 width=653 border=1>
<TBODY>
<TR>
<TD vAlign=top width="21%">
<P align=justify>實現文件 </P></TD>
<TD vAlign=top width="41%">
<P align=justify>所包含的頭文件 </P></TD>
<TD vAlign=top width="38%">
<P align=justify>實現的內容和功能 </P></TD></TR>
<TR>
<TD vAlign=top width="21%">
<P align=justify>stdafx.cpp </P></TD>
<TD vAlign=top width="41%">
<P align=justify>#include "stdafx.h" </P></TD>
<TD vAlign=top width="38%">
<P align=justify>用來產生預編譯的類型信息。 </P></TD></TR>
<TR>
<TD vAlign=top width="21%">
<P align=justify>t.cpp </P></TD>
<TD vAlign=top width="41%">
<P align=justify># include "stdafx.h"</P>
<P align=justify># include "t.h"</P>
<P align=justify></P>
<P align=justify># include "MainFrm.h"</P>
<P align=justify># include "childfrm.h"</P>
<P align=justify>#include "tdoc.h"</P>
<P align=justify>#include "tview.h"</P>
<P align=justify></P></TD>
<TD vAlign=top width="38%">
<P align=justify>定義CTApp的實現,并定義CTApp類型的全局變量theApp。 </P></TD></TR>
<TR>
<TD vAlign=top width="21%">
<P align=justify>childfrm.cpp </P></TD>
<TD vAlign=top width="41%">
<P align=justify>#inlcude "stdafx.h"</P>
<P align=justify>#include "t.h"</P>
<P align=justify></P>
<P align=justify>#include “childfrm.h” </P></TD>
<TD vAlign=top width="38%">
<P align=justify>實現了類CChildFrame </P></TD></TR>
<TR>
<TD vAlign=top width="21%">
<P align=justify>childfrm.cpp </P></TD>
<TD vAlign=top width="41%">
<P align=justify>#inlcude "stdafx.h"</P>
<P align=justify>#include "t.h"</P>
<P align=justify></P>
<P align=justify>#include "childfrm.h" </P></TD>
<TD vAlign=top width="38%">
<P align=justify>實現了類CMainFrame </P></TD></TR>
<TR>
<TD vAlign=top width="21%">
<P align=justify>tdoc.cpp </P></TD>
<TD vAlign=top width="41%">
<P align=justify># include "stdafx.h"</P>
<P align=justify># include "t.h"</P>
<P align=justify></P>
<P align=justify># include "tdoc.h" </P></TD>
<TD vAlign=top width="38%">
<P align=justify>實現了類CTDoc </P></TD></TR>
<TR>
<TD vAlign=top width="21%">
<P align=justify>tview.cpp</P>
<P align=justify></P></TD>
<TD vAlign=top width="41%">
<P align=justify># include "stdafx.h"</P>
<P align=justify># include "t.h"</P>
<P align=justify></P>
<P align=justify># include "tdoc.h"</P>
<P align=justify># include "tview.h"</P>
<P align=justify></P></TD>
<TD vAlign=top width="38%">
<P align=justify>實現了類CTview</P>
<P align=justify></P></TD></TR></TBODY></TABLE>
<P></P>
<P> </P>
<P align=center> </P>
<P align=justify>從表1-2中的包含關系一欄可以看出:</P>
<DIR>
<P align=justify>CTApp 的實現用到所有的用戶定義對象,包含了他們的定義;CView
的實現用到CTdoc;其他對象的實現只涉及自己的定義;</P>
<P align=justify>當然,如果增加其他操作,引用其他對象,則要包含相應的類的定義文件。</P></DIR>
<P align=justify>對預編譯頭文件說明如下:</P>
<P
align=justify>所謂頭文件預編譯,就是把一個工程(Project)中使用的一些MFC標準頭文件(如Windows.H、Afxwin.H)預先編譯,以后該工程編譯時,不再編譯這部分頭文件,僅僅使用預編譯的結果。這樣可以加快編譯速度,節省時間。</P>
<P
align=justify>預編譯頭文件通過編譯stdafx.cpp生成,以工程名命名,由于預編譯的頭文件的后綴是“pch”,所以編譯結果文件是projectname.pch。</P>
<P
align=justify>編譯器通過一個頭文件stdafx.h來使用預編譯頭文件。stdafx.h這個頭文件名是可以在project的編譯設置里指定的。編譯器認為,所有在指令#include
"stdafx.h"前的代碼都是預編譯的,它跳過#include "stdafx.
h"指令,使用projectname.pch編譯這條指令之后的所有代碼。</P>
<P align=justify>因此,所有的CPP實現文件第一條語句都是:#include "stdafx.h"。</P>
<P align=justify>另外,每一個實現文件CPP都包含了如下語句:</P>
<P align=justify>#ifdef _DEBUG</P>
<P align=justify>#undef THIS_FILE</P>
<P align=justify>static char BASED_CODE THIS_FILE[] = __FILE__;</P>
<P align=justify>#endif</P>
<P
align=justify>這是表示,如果生成調試版本,要指示當前文件的名稱。__FILE__是一個宏,在編譯器編譯過程中給它賦值為當前正在編譯的文件名稱。</P>
<HR>
<TABLE cellSpacing=0 cellPadding=0 width="100%" align=center border=0>
<TBODY>
<TR>
<TD align=middle><A href="http://www.vczx.com/tutorial/mfc/mfc.php"
target=_self>回目錄</A> <A href="http://www.vczx.com/tutorial/mfc/mfc2.php"
target=_self>下一章</A></TD></TR></TBODY></TABLE>
<P> </P>
<P align=justify> </P></BODY></HTML>
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -