談談標頭檔案

2021-06-01 08:07:25 字數 580 閱讀 5989

標頭檔案為所有extern物件宣告,函式宣告以及inline函式(模板)定義提供了乙個集中的位置。

1)標頭檔案提供了兩個保證:第一,保證所有檔案都包含同乙個 「全域性物件」 或函式的同乙份申明。(同乙個物件只能有乙個定義,但是可以有多個宣告,如果在每個需要用到物件的地方都手動加上宣告,有可能出現有點地方宣告出錯)第二,如果需要修改宣告,則只需改變乙個標頭檔案。

2)標頭檔案提供的宣告邏輯上應該屬於乙個組。

3)標頭檔案不應該含有非inline函式或物件的定義。會產生重複定義的編譯錯誤。(符號常量和inline函式可以被定義多次,符號常量的值會代替改名字的出現,所以常量的定義必須在它被使用的檔案中可見)

4)最後看看在ming3專案中的具體使用:第一,只有.h,沒有.cpp的情況:像 #define teamcopy_map        "teamcopy.map",常量定義,enum world_teamcopy_status,聯合,結構等型別的定義。第二,有.h和.cpp的,byte getserialclass(uint serial),全域性函式的定義,extern itemtable g_itemtable ; 全域性物件,在類的.h檔案裡加上extern宣告,在.cpp裡定義

Linux標頭檔案 C C 標頭檔案

linux標頭檔案 c c 標頭檔案。linux常用標頭檔案如下 posix標準定義的標頭檔案 目錄項 檔案控制 檔名匹配型別 路徑名模式匹配型別 組檔案 網路資料庫操作 口令檔案 正規表示式 tar歸檔值 終端i o 符號常量 檔案時間 字元擴充套件型別 internet定義 套接字本地介面 in...

string標頭檔案與cstring標頭檔案

首先說string的標頭檔案 1 包裝了std的c 標頭檔案 2 舊的c標頭檔案 3 舊c標頭檔案的std版本,切記,這不是cstring的標頭檔案 詳見effective c 的第49條 再說cstring的標頭檔案 注 vc9編譯環境下 1 非mfc版本,控制台程式就用這個 2 mfc版本,需要...

C 標頭檔案與C標頭檔案

include 設定插入點 include 字元處理 include 定義錯誤碼 include 浮點數處理 include 檔案輸入 輸出 include 引數化輸入 輸出 include 資料流輸入 輸出 include 定義各種資料型別最值常量 include 定義本地化函式 include ...