以下内容大部分摘自JJ.Hou之《深入浅出MFC》一书
传统的SDK编程,只需要载入WINDOWS.H这一巨大的头文件即可,它有5000多行,定义了各种win32API,后来这一头文件被拆分成若干个较小的头文件,再以WINDOWS.H 将其include进去,除非你明确知道该用哪个头文件,否则直接载入WINDOWS.H会比较省事。
MFC程序不这么单纯,它通常需要面对另外一些.H文件:
- STDAFX.H:这个文件将用来作为Precompiled header(预编译头),其内只是载入其它的MFC头文件,应用程序通常会准备自己的STDAFX.H
- AFXWIN.H:每一个MFC程序都必须载入它,因为它以及它载入的文件声明了所有的MFC类,此文件内含AFX.H,后者又载入了AFXVER_.H,后者又载入了AFX_W32.H,后者又载入了WINDOWS.H(啊,终于现身)。
- AFXEXT.H:凡使用工具栏、状态栏的程序必须载入这个头文件。
- AFXDLGS.H:凡使用通用型对话框的MFC程序需载入此文件。
- AFXCOLL.H:凡使用Collection Classes(集合类)之程序必须载入此文件。
- AFXDLLX.H:凡MFC extension DLLs 均需载入此文件。
- AFXRES.H:MFC程序的RC文件必须载入此文件,MFC对于标准资源(例如:File、Edit等菜单项目)的ID都有默认值,定义于此文件中,例如:
#define ID_FILE_NEW 0xE100
#define ID_FILE_OPEN 0xE101
...
...