#include

最近下載了一個程序,但是程序運行的時候出現瞭如下錯誤:

 fatal error C1189: #error :  Building MFC application with /MD[d] (CRT dll version) requires MFC shared dll version. Please #define _AFXDLL or do not use /MD[d]

最後發現頭文件中多了#include <afx.h>。

經查詢,網上對其解釋如下:

一些定義與設置,爲MFC提供最基本支持,將各種鬆散的東西組織起來,同時爲MFC 類庫的後續建立 提供方便。一個最簡單的 MFC 只需 afxwin.h 即可,而afxwin.h 開始就是 #include <afx.h>

具體來說, afx.h 內容如下:
1. 編譯選項設置,還包括warning等的預設值
2. 一些頭文件:afxver_.h, C相關頭文件,一些Win32庫, 包庫MFC庫
3. 一些基本類聲明,包括CArchieve, CArchieveException, CDumpContext, CException, CFile, CFileException, CFileFind, CMemFile,   CMemoryException , CNotSupportedException, CObject, CStdioFile
4 一些基本類型, 常量, 全局變量,函數,以及一些方便比較,轉換的東東, 診斷函數支持, 還包括一些方便診斷的宏(由於MFC的嚴謹性, afx.h 中提供了大量方便其他MFC 頭文件 的宏等)
參考資料:
http://zhidao.baidu.com/question/90547753.html
http://hi.baidu.com/showland/item/05aa70d8147548e6b3f777c3

 

發佈了60 篇原創文章 · 獲贊 15 · 訪問量 66萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章