google開(kāi)源項(xiàng)目風(fēng)格指南二 命名約定(C++)

命名規(guī)則具有一定隨意性, 但相比按個(gè)人喜好命名, 一致性更重, 所以不管你怎么想, 規(guī)則總歸是規(guī)則


1 通用命名規(guī)則

函數(shù),變量,文件命名要有描述性,少用縮寫 盡可能給出有描述性的命名,別心疼空間,讓代碼易于理解更加重要 不要用只有項(xiàng)目開(kāi)發(fā)者才能理解的縮寫 不要通過(guò)省略幾個(gè)字母來(lái)縮寫單詞

警示實(shí)例:

int n; //不知所名,莫名其妙 int nerr; //奇怪的縮寫 int n_comp_conns; //奇怪的縮寫 int wgc_connections; //只有開(kāi)發(fā)者才明白的縮寫 int pc_reader; //pc可以有很多種解釋 int cstmr_id; //刪減了字母


2 文件命名

文件名稱要全部小寫, 可以包含下劃線或者連字符,按照項(xiàng)目的約定選擇,最好選擇下劃線 通常盡量讓文件名更加明確 內(nèi)聯(lián)函數(shù)必須放在.h 文件中,如果內(nèi)聯(lián)函數(shù)比較短,可以直接放在.h中


3 類型命名

類型名稱的每個(gè)單詞首字母都使用大寫,不包含下劃線 所有的類型命名,類\結(jié)構(gòu)體\類型定義\枚舉使用相同的約定

類型命名實(shí)例:

class UrlTable {... class UrlTableTester { ... struct UrlTableTester { ... typedef hash_map<UrlTableProperties * ,string> PropertiesMap; enum UrlTableErrors { ...


4 變量命名

變量名一律小寫 單詞之間使用下劃線連接 類的成員變量以下劃線結(jié)尾,結(jié)構(gòu)體不需要 對(duì)全局變量沒(méi)有特別要求,但是少用為好,可以使用g_或者其他標(biāo)志作為前綴,更好的區(qū)分局部變量

變量命名實(shí)例:

string table_name ; string tablename;


5 常量命名

在全局或者類里面的常量名稱之前加k 除去開(kāi)頭的k之外的每個(gè)單詞開(kāi)頭字母均使用大寫

常量命名實(shí)例:

const int kDaysInAWeek = 7;


6 函數(shù)命名

常規(guī)函數(shù)使用大小寫混合,每個(gè)單詞的首字母大寫,沒(méi)有下劃線 取值和設(shè)值函數(shù)則要求與變量名匹配 其他非常短小的內(nèi)聯(lián)函數(shù)名可以用小寫字母,例如,如果在循環(huán)中調(diào)用這樣的函數(shù)甚至都不用緩存其返回值,小寫命名可以接受

常量命名實(shí)例:

常規(guī)函數(shù) AddTableEntry() DeleteUrl() 如果函數(shù)出錯(cuò)的時(shí)候直接崩潰,可以在函數(shù)名加上OrDie,但函數(shù)本身必須集成在產(chǎn)品代碼中,OpenFileDie()


7 名字空間命名

名字空間用小寫字母命名,基于項(xiàng)目名稱和目錄結(jié)構(gòu)

常量命名實(shí)例:

常規(guī)函數(shù) AddTableEntry() DeleteUrl() 如果函數(shù)出錯(cuò)的時(shí)候直接崩潰,可以在函數(shù)名加上OrDie,但函數(shù)本身必須集成在產(chǎn)品代碼中,OpenFileDie()

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

  • importUIKit classViewController:UITabBarController{ enumD...
    明哥_Young閱讀 4,194評(píng)論 1 10
  • 1、引言 數(shù)據(jù)庫(kù)設(shè)計(jì)過(guò)程中表、字段等的命名規(guī)范也算是設(shè)計(jì)規(guī)范的一部分,不過(guò)設(shè)計(jì)規(guī)范更多的是為了確保數(shù)據(jù)庫(kù)設(shè)計(jì)的合理...
    SnowflakeCloud閱讀 41,252評(píng)論 0 48
  • 開(kāi)發(fā)cocoa框架、插件或者其它帶公共API的可執(zhí)行文件需要不同于應(yīng)用開(kāi)發(fā)一些方法和慣例。你的產(chǎn)品的主要客戶是開(kāi)發(fā)...
    醬油不愛(ài)醋閱讀 1,806評(píng)論 0 4
  • 《善用時(shí)間》1 推薦序及序言 帶著目的和疑問(wèn)來(lái)讀書: 什么是善用時(shí)間?就是合理利用 為什么善用時(shí)間? 善用時(shí)間的方...
    寬幸福閱讀 436評(píng)論 0 0
  • 洪崖的洞前流淌著歲月的年華 年華在你的眼眸里流轉(zhuǎn) 一眼眨碎在飛舞的流光
    泊客行閱讀 186評(píng)論 0 0

友情鏈接更多精彩內(nèi)容