第1 章 文件結構
每個C++/C 程序通常分為兩個文件。一個文件用于保存程序的聲明(declaration ),
稱為頭文件。另一個文件用于保存程序的實現(implementation ),稱為定義(definition)
文件。
C++/C 程序的頭文件以“.h”為后綴,C 程序的定義文件以“.c”為后綴,C++程序
的定義文件通常以“.cpp”為后綴(也有一些系統以“.cc”或“.cxx”為后綴)。
1.1 版權和版本的聲明
版權和版本的聲明位于頭文件和定義文件的開頭(參見示例1-1),主要內容有:
(1)版權信息。
(2 )文件名稱,標識符,摘要。
(3 )當前版本號,作者/修改者,完成日期。
(4 )版本歷史信息。
/*
* Copyright (c) 2001,上海貝爾有限公司網絡應用事業部
* All rights reserved.
*
* 文件名稱:filename.h
* 文件標識:見配置管理計劃書
* 摘 要:簡要描述本文件的內容
*
* 當前版本:1.1
* 作 者:輸入作者(或修改者)名字
* 完成日期:2001年7月20日
*
* 取代版本:1.0
* 原作者 :輸入原作者(或修改者)名字
* 完成日期:2001年5月10日
*/
示例1-1 版權和版本的聲明
1.2 頭文件的結構
頭文件由三部分內容組成:
(1)頭文件開頭處的版權和版本聲明(參見示例1-1)。
(2 )預處理塊。
(3 )函數和類結構聲明等。
假設頭文件名稱為 graphics.h,頭文件的結構參見示例1-2。
1.3 定義文件的結構
定義文件有三部分內容:
(1) 定義文件開頭處的版權和版本聲明(參見示例1-1)。
(2 ) 對一些頭文件的引用。
(3 ) 程序的實現體(包括數據和代碼)。
假設定義文件的名稱為 graphics.cpp,定義文件的結構參見示例1-3。
// 版權和版本聲明見示例1-1,此處省略。
#include “graphics.h” // 引用頭文件
…
// 全局函數的實現體
void Function1(…)
{
…
}
// 類成員函數的實現體
1.5 目錄結構
如果一個軟件的頭文件數目比較多(如超過十個),通常應將頭文件和定義文件分
別保存于不同的目錄,以便于維護。
例如可將頭文件保存于include 目錄,將定義文件保存于source 目錄(可以是多級
目錄)。
如果某些頭文件是私有的,它不會被用戶的程序直接引用,則沒有必要公開其“聲
明”。為了加強信息隱藏,這些私有的頭文件可以和定義文件存放于同一個目錄。