總結的編碼規範

2021-05-24 09:54:11 字數 2660 閱讀 5754

1、

巨集定義格式:每個單詞用下劃線隔開。示例:

#define

***_yyy

20#define

、***_yyy、20

各用兩個

tab隔開

2、一律不得出現常量,對於出現的常量(指數字和字串),用意義明顯的巨集定義(或列舉變數)代替。

3、每個函式體不能過長,原則上不超過

200行

4、每個檔案不能過長,原則上不超過

2500行5、

類的規則:

(1)建構函式與析構函式放置在

public

下,並與其他

public

隔開(2)

訊息對映函式統一放在乙個

public

下,格式如下:

lresult

on***(

uint

umsg,

wparam

wparam,

lparam

lparam,

bool& bhandled);(3

)函式的實現體格式:

bool

classname

::functiona(cstring

strval){

....................}

6、函式中不出現複雜的計算公式,一律用巨集定義代替,定義時,一定要注意變數加空格。

7、函式必須用意義明確的英文單詞定義。

8、每個函式必須注釋其功能(簡單函式除外),重要變數也要注釋其用處。

9、特殊變數的型別如果考慮到以後可能更改的話,用

typedef

來重定義一下,以後要該的話,只需更改一處就可以了。

注意要與模板程式設計聯絡到一起,做到型別「復用」。

10、cdc

的attach

和detach

要成對使用,

getdc

和releasedc

成對使用。

切記,否則容易造成gdi控制代碼洩露

11、類指標的使用一定要判斷當前指標是否為

null

這個功能可以用乙個巨集定義來實現。如果類似的巨集定義多的話,可以總結在乙個單獨的檔案裡

12、對於變數賦值二選一的操作,建議用三元操作符?:

15、如果乙個巨集是由兩外兩個巨集計算得到一定要加括號。例如:

#define

max_cand_num

(candcel_row_num*candcel_col_num)

16、乙個工程大致分為下面幾部分:

(1)窗體的介面繪製類:負責子窗體的定位。

(2)訊息處理類:繪製類中只負責接受訊息,此類負責處理(1、

2可以合併)。

(3)工具類:負責資料合法性校驗。不能有成員變數,也不進行巨集、常量的定義(除非必須),完全由傳進來的引數,按照某種規則進行處理。

(4)資料處理類:負責資料的產生、處理。按照介面繪製類所需的格式進行返回,中間不需其他工具類的處理,但少量資料可以由工具類進行資料處理類和介面繪製類的中間轉換。此類裡不能有

extern

定義的全域性變數的引用,如果需要則傳引用。

17、在繪圖函式中不要做與繪製不相關的一切操作,只允許對背景、、或顯示的更改,其他任何操作都禁止,任何!

18、函式命名規則(1

)獲取某個字段。形式:修飾限定詞

+ of +

欄位名。

20、利用抽象類等技術盡量提高**的可重用性.

21、出了函式功能單一外,變數功能也要單一。即變數要盡量保持只有在迴圈、遞迴或者結果收集等他殊情況下,賦值次數才能夠超過一次。

22、介面主程式盡量不含有與介面控制相關的變數、函式,這些變數、函式一律組合成乙個合適的物件。

23、if

等表示式的條件盡量簡單,如果過於複雜則將複雜表示式(或其中一部分)的結果存放到乙個臨時變數,以此變數名稱來解釋表示式的用途。

24、對於建構函式比較好的寫法是,使用所謂的

member intialization list

(成員初值列表)替換賦值動作,例如:

abentry:abentry():thename(name),numtimesconsulted(0) {}

常規建構函式如下,但效率通常不如上面的高。

abentry:abentry()

25、寫類或者函式時候,要充分考慮將來所有的可能性。例如引數、返回值的型別有可能變動。例如乙個函式

cstringgettext( intindex );

其實這個函式在將來有可能返回其他型別例如

ushort

型別,這個時候函式名也要隨著更改,如果這個函式返回的是

ushort

型別,函式名卻潛意識告訴我們他返回乙個

text,

,而text

容易讓我們想到

cstring

(或與之相容或可以轉換的型別,例如

char *

)。另外這個函式的引數

index

,也有可能更改因為我們有可能用乙個

cstring

,去索引另外乙個

cstring

。26、

所有的資料都應該初始化,不管這是乙個內建型別還是自定義型別。

27、關於資料結構、巨集定義和常量定義最好都定義在乙個單獨的檔案中,這樣方便後來擴充套件時候使用。

自己總結的C 編碼規範

格式 乙個檔案最好不要超過500行 除ide自動生成的類 乙個檔案必須只有乙個命名空間,嚴禁將多個命名空間放在乙個檔案裡。乙個檔案最好只有乙個類。如果超過500行,考慮拆分類或者使用partial 類將類按照功能拆分。乙個方法的 最好不要超過50行,如果超過考慮將裡面的邏輯封裝成函式。空格 空行 空...

軟體開發編碼規範總結

意 義 1.乙個軟體的生命週期中,80 的花費在於維護,規範降低了金錢成本和時間成本 2.幾乎沒有任何乙個軟體,在其整個生命週期中,均由最初的開發人員來維護,規範減少了工作交接過程中的交流成本。3.規範可以改善軟體的可讀性,可以讓程式設計師盡快而徹底地理解新的設計和 節約了時間,提高了工作效率。4....

python基礎之編碼規範總結

官方文件 中文翻譯 每一級縮排4個空格。續行應該與包裹元素對齊,要麼使用圓括號,方括號,花括號內的隱式行連線來垂直對齊,要麼使用掛行縮排對齊。當使用掛行縮排對齊時,應該考慮到第一行不應該有引數,以及使用縮排程式設計客棧以區分自己是續行。def lajlomhdong function name va...