C++ 編碼&命名規範
- 2019 年 10 月 6 日
- 筆記
1.命名規範
關於命名規範我們常用於本地變數名、全局變數名、預處理指令名稱、函數名稱、命名空間名稱、類名、成員變數名稱、成員函數名稱。
1.1 通用命名規範.
在開發的時候命名盡量使用描述性的命名。這樣的命名更加有助於別人快速的理解。比如:

關於縮寫,除非是大家都能夠看得懂的縮寫。否則盡量不要使用縮寫。

1.2 本地變數
通常情況下變數名一律小寫。單詞以下劃線鏈接。如:

1.3 全局變數
對於全局變數的名稱通常可以添加g_作為前綴。建議盡量少的使用全局變數。全局變數的命名一般不做特殊要求。建議和本地變數的命名規則保持一致。
1.4 預處理指令
這裡的預處理指令一般是#defined 這樣的命名定義。一般情況下建議將#defined 後的名稱使用全大寫模式。注意defined之後不要添加語句結束符[;].正常的寫法例如:

1.5 函數
普通函數通常使用大小寫混合模式,函數名以大小寫字母開頭每個單詞的首字母大寫。
例如:

對於存取函數(get/set)而言建議和成員變數名稱保持一致。例如:

1.6 命名空間
命名空間的名稱是全小寫的,基於項目名稱和目錄結構如:

1.7 類
類型命名每個單詞以大寫字母開頭,不包含下劃線。例如:

1.8 成員變數
成員變數命名規則和本地變數命名規則保持一致。
1.9 成員函數
成員函數命名規則和全局函數命名規則保持以一致。
2.注釋規範
2.1.單行注釋
使用雙斜線// 或者 /* */ 都可以,一般保持風格同一就好。
2.2.文檔注釋
通常是新建一個.h或者.cpp文件時。添加在文件頂部的注釋。該注釋主要包括。版權、許可版本、作者。
2.3.類注釋
類注釋主要描述當前類的作用,以及提供的相關功能。如果在文檔注釋中已經包含相關資訊。在類注釋中可以添加一句詳見文檔注釋。
2.4.函數注釋
函數聲明:
注釋於聲明之前,描述函數功能及用法,注釋使用描述式("Opens the file")而非指令式 ("Open the file");注釋只是為了描述函數而不是告訴函數做什麼。通常,注釋不會描述函數如何實現,那是定義部分的事情。
函數聲明處注釋的內容:

函數定義:
每個函數定義時要以注釋說明函數功能和實現要點,如使用的漂亮程式碼、實現的簡要步驟、如此實現的理由、為什麼前半部分要加鎖而後半部分不需要。
2.5. 變數注釋
通常變數名本身足以很好說明變數用途,特定情況下,需要額外注釋說明。
類數據成員:
每個類數據成員(也叫實例變數或成員變數)應注釋說明用途,如果變數可以接受 NULL 或-1等警戒值(sentinel values),須說明。
全局變數:
和數據成員相似,所有全局變數(常量)也應注釋說明含義及用途。
3. 編碼規範
3.1. 括弧
對於C/C++而言。編碼的中出現的大括弧通常放在函數,類等名稱的下一行。例如:

3.2. 縮進
如上一點中程式碼展示,在程式碼中可以給出適當的縮進。便於程式碼的閱讀。
本筆記主要從命名規範、注釋規範、程式碼規範三個方面描述了在日常C++開發過程中需要遵守的規範。當然正對於不同公司、不同團隊可能會指定自己更加詳細的編碼規範。在開發過程中可以先閱讀一下項目中的其他源程式碼。讓自己的程式碼風格和項目程式碼風格保持一致。老九君友情提示:良好的編碼規範可以事半功倍喲!
老九學堂出品 小夥伴們如果有好的建議或者發現了其中的錯誤,歡迎給老師們回饋,建議回饋QQ:614940318。
