c 中 cpp檔案與 h檔案有什麼不同。詳解與舉例怎麼使用

2021-08-08 04:51:58 字數 2940 閱讀 4466

1樓:小舅舅有點帥

以.h位字尾的是標頭檔案,.cpp是原始檔,一般都是在一個專案中。

如果是初學c++的話,使用原始檔(也就是.cpp)就足夠編寫出需要的源程式了。如書本上最基本的“hello world”編碼,只要在原始檔中有一個主函式就可以完成一個程式。

在稍微複雜一點的程式中,也許就會用到標頭檔案(.h)。事實上,這種標頭檔案和**中預處理裡包含的標頭檔案沒有什麼區別(就好像c語言中#include )其中stdio.

h就是一個標頭檔案。

編寫標頭檔案就是按照自己的需要,給程式設計這樣的標頭檔案。標頭檔案中,一般包含一些類的宣告,函式定義之類的東西,方便在原始檔的主函式中使用。

例如在a.h檔案中:

#include

using namespace std;

class try

public:

void do();

}接下來,只要在原始檔b.cpp中的預處理命令裡寫成:

#include

#include "a.h" (也就是在這裡加上#include "a.h"這一句)

using namespace std;

.....

就可以在b.cpp的**中宣告和呼叫try型別的物件了。

擴充套件資料

c++程式裡使用多個cpp和h檔案:

建立一個工程,裡面有三個檔案hello.hpp、hello.cpp、main.cpp

// hello.hpp

#ifndef hello_hpp

#define hello_hpp

class hello

public:

void show() const;

#endif

// hello.cpp

#include "hello.hpp"

#include

using std::cout;

using std::endl;

void hello::show() const

cout << "hello world" << endl;

// main.cpp

#include "hello.hpp"

int main()

hello hello;

hello.show();

return 0;

2樓:匿名使用者

.h檔案是宣告檔案,可以放類定義及宣告:

#ifndef _event_h_

#define _event_h_

#pragma once

#include

using std::string;

class event

;#endif

.cpp檔案是實現檔案,可以放類的定義:

#include "event.h"

#include

using std::string;

event::event(void)

event::~event(void)

void event::initevent(int time,string address,string contents)

......

3樓:

.h檔案時標頭檔案,放的是對類的宣告什麼的

.cpp檔案時原始檔,放的是對類的定義什麼的

所以.cpp檔案要加include相應的.h標頭檔案

4樓:匿名使用者

.h的檔案一般只包含函式宣告,類定義。.cpp的檔案包含函式的定義。一般情況下一個.cpp的檔案應該包含一個同名的.h檔案

5樓:羅紹川

cpp檔案是你寫呼叫的函式,h檔案是你定義的標頭檔案的地方。。。

6樓:匿名使用者

一個是標頭檔案,放類宣告的;一個是原始檔的,放**的

7樓:雙峪

c語言中.cpp與.h是如何連線的?

8樓:流年轉歲月換

*.h是標頭檔案,一般放函式的宣告

*.cpp是原始檔,一般放函式的定義(即功能實現)。

*.h檔案就像是一個介面,具體的實現可以在*.cpp中也可以在*.h中。

在寫程式的時候,如果要用到某個標頭檔案就要包含這個標頭檔案。

系統自帶的標頭檔案用:#include或者#include沒有.h的是c++標準標頭檔案,有.h的是為了更好的相容c才用的。

自己寫的標頭檔案用:#include"a.h"(這裡必須用“”雙引號)。

一般如果只有一個cpp檔案,可以不謝函式宣告的.h檔案,直接把函式宣告放在cpp中。

9樓:金色潛鳥

.h 和 .cpp 不是 連線/連結 關係,而是包含關係。

也就是說,在預編譯期間,編譯器把 .h 的文字內容,原原本本 插入.cpp 檔案中,插入位置就在 #include 這句 巨集命令處。文字內容 插入完畢,再編譯 .cpp

系統的 .h 放在 系統資料夾們 裡。系統資料夾路徑 定義在環境變數 include 裡。

自定義 .h 可以放在當前資料夾,也可別的資料夾。若在別的資料夾,寫 #include 時可以把路徑加在.h 檔名前。

10樓:lucien神

.c或者.cpp是原始檔 就是你寫源**的地方 一般.

h是用來作為宣告、呼叫使用 在.cpp的最開頭用#include "***.h"就可以 一般放在同一個資料夾內 另外.

h裡面會在開頭結尾寫

#ifndef _***_h_

#define _***_h_

#endif

防止重複包含

c盤的資料夾看不到了,C盤中為什麼有檔案看不到?

是不是別人在你的電腦上用超級兔子之類的軟體中的隱藏磁碟的選項給你隱藏了,我就遇到過。編輯登錄檔檔案 記事本中建立,儲存時把字尾名改為reg 雙擊匯入 windows registry editor version 5.00 hkey local machine software microsoft ...

建築工程中,“工程”與“工程檔案(城市建設檔案)”有什麼

鄭浪啪 工程資料 工程建設從專案的提出 籌備 勘測 設計 施工到竣工投產等過程中形成的檔案材料 圖紙 圖示 計算材料 聲像材料等各種形式的資訊總和,簡稱為工程資料。工程檔案是指從工程專案提出 立項 審批,勘察設計 生產準備 施工 監理 驗收等工程建設及工程管理過程形成並應歸檔儲存的文字 聲像,圖紙等...

我的C盤中的檔案總量有多G,我的C盤中的檔案總量有6個多G 。

虛擬記憶體檔案,大小一般是你記憶體的1.5倍,系統檔案,隱藏屬性,可以移動到別的盤上,我的文件裡也有很多佔資方的檔案,就算你把我的文件檔案夾移動到別的盤上,也一樣會在c盤生成很多的垃圾檔案,一般是軟體安裝時的備份安裝包什麼的,還有就是迅雷看看,如果不設定的話預設存在c盤,也會占用大量的空間 隱藏的檔...