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。