我只是想知道.cpp和.h文件之間的區別是什麼?我會用什麼頭文件(.h)以及我將使用什麼cpp文件?CPP | .h文件(C++)
回答
一般來說,它真的可能是少了很多一般:
.H(頭)文件是被多次使用的東西的聲明,並在其他文件#include
d
的.cpp(實現)文件是爲別的,幾乎從來沒有#include
d
好吧,看看我是否有這個權利;如果我有一個類,比如說InventoryClass,我會把它放在一個.h文件中,然後從一個.cpp文件中調用它的方法。 謝謝你的回答。 :) – 2010-01-02 00:36:54
你通常會在頭文件中放入類的聲明(即:我有這些字段,方法等)。每種方法都可以在cpp文件中實現。 – 2010-01-02 00:37:59
@ baeltazor是的,這就是主意。 – James 2010-01-02 00:39:43
按照慣例,.h文件是你#include的東西。 CPP文件是您添加到項目中以編譯爲單獨的對象文件,然後傳遞給鏈接器的內容。
謝謝帕維爾。 – 2010-01-02 00:37:31
.h文件被稱爲頭文件。你通常把你的界面放在那裏(你想公開的東西)。 cpp文件是你實際實現你的界面的地方。
技術上,沒有區別。 C++允許您將代碼放入任何文件中,並且可以使用任何格式。
按照慣例,你把你的聲明(基本上是構成你的API的)放在.h文件中,並且被稱爲「標題」。 .cpp文件適用於代碼的實際「內核」 - 實現細節。
通常情況下,您的項目中的其他文件(以及其他項目,如果您正在創建庫)中包含#include
的頭文件,因此編譯器可以獲得編譯所需的接口。 .cpp文件中的實現通常是實現的,因此每個.h文件都有一個.cpp文件「填充」實現。
首先,它們都是包含C++編譯器或預處理器代碼的文本文件。就係統而言,沒有區別。
按照慣例,不同的文件擴展名被用來表示文件的內容。在C程序中,您傾向於在C++ .hpp和.cpp中看到.h和.c文件以達到相同的目的。
第一組叫做頭文件的.h和.hpp文件主要包含非執行代碼,例如常量和函數原型的定義。它們通過#include
指令被添加到程序中,並且不僅由程序或庫使用,而且由其他程序或庫使用,用於聲明接口點和合同定義值。它們也用於設置在編譯不同操作系統時可能會改變的元數據。
第二組.c和.cpp文件包含庫或程序代碼的執行部分。
糾正我,如果我錯了,但
當你#包括的東西,它更多或更少的刀片整個包含文件到一個與包括命令;也就是說,當我包含「genericTools.cpp」中的「macros.h」時,「macros.h」的全部內容將被放置在「genericTools.cpp」中。這就是爲什麼你需要使用諸如「#pragma once」或其他保護措施,以防止兩次包含同一個文件的原因。
值得注意的是,模板化代碼需要完全在您將要包括在其他地方的文件中。(我不確定 - 可以從包含的文件中忽略模板專業化,並像正常功能那樣鏈接)
.cpp
即實現文件是我們的實際程序或代碼。 當我們需要在代碼中使用不同的內置函數時,我們必須包含頭文件.h
文件。
這些.h
文件包含我們使用的內置函數的實際代碼,因此我們可以簡單地調用相應的函數。
因此,在我們編譯我們的代碼時,我們可以看到比我們實際編碼更多的行編譯數,因爲不僅我們的代碼被編譯,而且隨着函數的(代碼)(包含在.h
文件中)也被編譯。
- 1. C++中的類(cpp文件&h文件)
- 2. C++ .h&.cpp文件 - 原型錯誤
- 3. C++ .h和.cpp文件分開
- 4. C++ - 的.h和.cpp
- 5. #include .h或.cpp文件?
- 6. 從.h文件生成.cpp源文件
- 7. C++ - 從.h文件獲取.cpp文件中的類變量
- 8. 的Visual C++,組織的.h和.cpp文件中的文件夾
- 9. VS 2012:排序.CPP/.h文件
- 10. 從.ui文件生成.h和.cpp
- 11. 何處下載C++ STLsource代碼.h和.cpp文件?
- 12. 我應該用C++分開cpp和h文件嗎?
- 13. C++創建在單獨的.cpp和.h文件
- 14. 給C++添加第二個.h/cpp文件的麻煩
- 15. 我可以在c#項目中添加.h和.cpp文件嗎?
- 16. 設計.h和一個.cpp文件C++:錯誤
- 17. 使用C++庫,正值的.cpp和.h文件
- 18. Linux操作系統Ubuntu C++的.h和.cpp文件
- 19. 的.h文件包含在頭文件和cpp文件
- 20. 從C/cpp文件
- 21. C++ include .h包含.cpp同名嗎?
- 22. 自動從.cpp/.c中生成.h
- 23. C++繼承 - 覆蓋函數,包括使用「::」s,.h文件和.cpp文件
- 24. C++如何正確地將.cpp分割成.cpp和.h
- 25. C++ Makefile與外部h和o文件
- 26. QT創建者:爲.cpp&.h文件添加文件夾
- 27. 圖h文件和cpp文件即時得到許多錯誤
- 28. 所有.cpp文件都依賴於兩個.h文件?
- 29. 爲什麼CPP文件名必須與H文件名相符?
- 30. 在QT中如何從.ui文件製作.cpp和.h文件?
作爲一個建議,C語言頭文件使用'h'文件,C++語言文件使用'hpp'或'hxx'。 C++源文件可以包含C語言頭文件,但C源文件不能包含C++頭文件。因此,如果頭文件包含特定於C++的聲明或定義,請使用「hpp」或「hxx」擴展名來命名。 – 2010-01-02 00:37:48