從here,據說:爲什麼我們使用`#include「stdafx.h」`而不是`#include <stdafx.h>`?
對於#include「文件名」,在同一 目錄包含的指令文件的預處理器搜索。此方法通常用於包含程序員定義的頭文件,其格式爲 。
對於#include預處理程序在實現中搜索 從屬方式,通常在由 編譯器/ IDE預先指定的搜索目錄中。此方法通常用於包含標準庫 頭文件。
雖然this wiki link表明stdafx.h
是一個頭文件由visual studio IDE
stdafx.h中預先設計是一個文件,由Microsoft Visual Studio IDE嚮導生成, 描述兩個標準體系和具體項目包括經常使用但幾乎不會改變的文件 。
兼容的編譯器(例如,Visual C++ 6.0和更新版本)將 預編譯該文件以減少整體編譯時間。除非編譯選項/Yu'stdafx.h未被選中(默認爲 ),否則Visual C++將 不會在源文件中的#include「stdafx.h」之前編譯任何內容。它假定源代碼中的所有代碼都已經編譯完成並且包含該行 。
stdafx.h中的AFX代表Application Framework eXtensions。 AFX 是Microsoft Foundation Classes (MFC)的原始縮寫。儘管默認情況下使用名稱stdafx.h,但項目可能會指定一個替代名稱 。
然後
爲什麼我們使用的#include "stdafx.h"
代替#include <stdafx.h>
?
也許**其中** Visual Studio默認生成該標題可能有助於回答您自己的問題。 – WhozCraig