2014-03-28 41 views
0

以最傳統的方式,c/C++使用.h作爲頭文件擴展名。然而,在現實世界使用量(即的Visual C++),還有很多其他類型的頭文件,如:.hxx.hh.w.idl不同類型的C/C++頭文件有什麼區別

我的問題是,爲什麼人們需要不同類型的頭文件?我沒有我看到的所有標題類型的完整列表,但請選擇您熟悉的任何案例並解釋一下。

+1

我將使用.inl作爲標題的內聯方法,我不想混淆我的「接口」文檔,即.h文件。所以在MyClass.h的底部,我會'#include「MyClass.inl」' – franji1

+0

我也見過'.hpp',可怕的是'.h ++'。 –

+0

@MooingDuck:'.h ++'似乎是合法的。 * q-char-sequence *用於'#include'文件名由* q-char *定義*: 源字符集的任何成員,除了換行符和'「'類似的* h-char-sequence * –

回答

3

對於編譯器來說沒有區別。你可以使用你想要的擴展名,甚至根本不需要擴展名。所以,.hh,.hxx, .my_awesome_extension是有效的。編譯器唯一重要的是它可以找到一個具有指定名稱的文件。

0

編譯器不關心擴展,但是大多數代碼編輯器都會在它們遇到這些擴展之一時切換到C++模式。

例如Emacs將使用c-mode.h擴展名,而切換到c++-mode.hpp擴展名。

相關問題