本質上是沒有什麼區別的,.h檔案實現的功能是宣告本檔案或.cpp檔案中需要被別人使用或知道的變數、型別、函式及宏定義等。.h檔案就像是一個介面,具體的實現可以在.cpp中也可以在.h中。.cpp中的函式或變數即便是全域性的,在沒有其他.cpp檔案使用的情況下,也可以不寫在.h中。一般的資料,資料結構,介面,還有類的定義放在.h檔案中,可以叫他們標頭檔案,可以#include 到別的檔案中。功能實現一般都放在具體的.cpp檔案中,這樣方便檔案管理,節約時間,提高效率。你完全可以把功能實現一併放在.h檔案中,也可以#include一個.cpp檔案到另一個原始檔中,這樣編譯可以透過,但不方便檢視與管理,程式(或專案)稍微大點,容易造成混亂。不過編譯器編譯的都是cpp檔案。其實最簡單的理解就是.h是標頭檔案,裡面一般都是一些函式定義型別定義,不會有執行的程式碼,cpp是原始檔,是用來執行的,在cpp中加上#inlcude<>匯入.h檔案。說了一堆,你不會覺的.h沒什麼作用吧…….h的作用體現在當多個cpp檔案需要同一份變數、型別、函式或宏定義之類的話,我們不需要在這些cpp檔案中一一宣告,只需要在.h檔案中宣告,然後在這些cpp檔案中把這個.h檔案包含進去就OK了,對於簡短的小程式,.h往往顯得多餘,因為.h檔案重複使用的次數,還不如放在cpp檔案中方便。但對於較大的程式來說,使用.h是非常方便的!表達能力有限,不懂再問……
本質上是沒有什麼區別的,.h檔案實現的功能是宣告本檔案或.cpp檔案中需要被別人使用或知道的變數、型別、函式及宏定義等。.h檔案就像是一個介面,具體的實現可以在.cpp中也可以在.h中。.cpp中的函式或變數即便是全域性的,在沒有其他.cpp檔案使用的情況下,也可以不寫在.h中。一般的資料,資料結構,介面,還有類的定義放在.h檔案中,可以叫他們標頭檔案,可以#include 到別的檔案中。功能實現一般都放在具體的.cpp檔案中,這樣方便檔案管理,節約時間,提高效率。你完全可以把功能實現一併放在.h檔案中,也可以#include一個.cpp檔案到另一個原始檔中,這樣編譯可以透過,但不方便檢視與管理,程式(或專案)稍微大點,容易造成混亂。不過編譯器編譯的都是cpp檔案。其實最簡單的理解就是.h是標頭檔案,裡面一般都是一些函式定義型別定義,不會有執行的程式碼,cpp是原始檔,是用來執行的,在cpp中加上#inlcude<>匯入.h檔案。說了一堆,你不會覺的.h沒什麼作用吧…….h的作用體現在當多個cpp檔案需要同一份變數、型別、函式或宏定義之類的話,我們不需要在這些cpp檔案中一一宣告,只需要在.h檔案中宣告,然後在這些cpp檔案中把這個.h檔案包含進去就OK了,對於簡短的小程式,.h往往顯得多餘,因為.h檔案重複使用的次數,還不如放在cpp檔案中方便。但對於較大的程式來說,使用.h是非常方便的!表達能力有限,不懂再問……