C++命名規範(參考google C++規範)

一、簡述
Google 的C++規範號稱世界上最優秀的編碼規範,於是拿來研究下,已改善自己以後的工作,今天只先學習下它的命名規範。

二、命名規則
1.文件命名規則
文件名全部小寫,可以含下劃線或連字符,按項目約定命名,且儘量保證文件名明確。比如:

cmd_save_player_info_class.cc my_use_full_class.cc

定義類的文件名一般是成對出現,如:foo_bar.h foo_bar.cc

若是類中含大量內聯函數,我們還可使用-ini.h文件,使之文件內容更加清晰,於是又如:

url_table.h url_table.cc url-table-ini.h

2.類命名規則
類型命名每個單詞首字母大寫,不含下劃線,以名詞形式。比如: MyPalyerManager,這對於所有類型命名一樣,類結構體,枚舉,類定義都是如此,比如:MyExcitingEnum

3.變量命名規則
變量名一律小寫,單詞用下劃線相連,例如:

int player_id; string table_name;

特殊的是類成員變量,後跟下劃線區別普通變量,比如: player_name_ player_id_

全局變量則以 g_ 開頭,比如 : g_system_time

當然結構體成員變量還是和普通變量一樣,比如:string name; int num_entries;

4.常量命名規則
k後面跟大寫字母開頭的單詞,比如:

const int kDaysInAWeek=7;

const string kCompanyName=”Tecent”;

5.函數命名規則
常規函數每個單詞首字母大寫,使用命令式語氣,比如:OpenFile() CheckFileName(),

而存取函數或短小的內聯函數使用小寫加下劃線,且與訪問變量相吻合,比如 set_num_errors();

class Player{
public:
void set_player_id(const int player_id){return player_id_=player_id;}
int get_player_id() const{return player-id_;}
private:
int palyer_id_;
};

6.名字空間命名
命名空間全小寫,並基於項目名稱和目錄結構,比如

google_awesome_project

7.枚舉命名規則
枚舉類名屬於類型名,按類命名,枚舉值全大寫加下劃線,比如:ENUM_NAME
8.宏變量命名規則

如果你一定要用到宏,全大寫加下劃線,比如:

define PI_ROUND 3.0

三、總結
總的來說,函數名、變量名、文件名都應該具有描述性,不要隨意縮寫,類型變量名保持名詞性描述,函數名稱保持命令性語氣,宏、枚舉值全大寫加下劃線,變量、文件、命名空間、存取函數全小寫加下劃線,其中類成員變量還要以下劃線結尾,全局變量g_開頭

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章