首頁技術文章正文

傳智播客C/C++培訓專家:漫談軟件編碼風格

更新時間:2017-11-21 來源:黑馬程序員 瀏覽量:

通過建立代碼編寫規(guī)范,形成開發(fā)小組編碼約定,提高程序的可靠性、可讀性、可修改性、可維護性、一致性,保證程序代碼的質量,繼承軟件開發(fā)成果,充分利用資源。提高程序的可繼承性,使開發(fā)人員之間的工作成果可以共享。代碼的風格主要有以下幾點:

1、縮進

縮進以4個空格為單位。預處理語句、全局數據、函數原型、標題、附加說明、函數說明、標號等均頂格書寫。語句塊的“{”“}”配對對齊,并與其前一行對齊,語句塊類的語句縮進建議每個“{”“}”單獨占一行。

2、空格

變量、類、常量數據和函數在其類型,修飾(如 __fastcall 等)名稱之間適當空格并據情況對齊。關鍵字原則上空一格,如: if ( ... ) 等,運算符的空格規(guī)定如下:“::”、“->”、“[”、“]”、“++”、“--”、“~”、“!”、“+”、“-”(指正負號), “&”(取址或引用)、“*”(指使用指針時)等幾個運算符兩邊不加空格(其中單目運算符系指與操作數相連的一邊),其它運算符(包括大多數二目運算符和三目運算符“?:”兩邊均加一空格,“(”、“)”運算符在其內側空一格,在作函數定義時還可據情況多空或不空格來對齊,但在函數實現時可以不用?!?”運算符只在其后空一格,需對齊時也可不空或多空格,“sizeof”運算符建議也在其后空一格,不論是否有括號,對語句行后加的注釋應用適當空格與語句隔開并盡可能對齊。

3、對齊

原則上關系密切的行應對齊,對齊包括類型、修飾、名稱、參數等各部分對齊。另每一行的長度不應超過屏幕太多,必要時適當換行,換行時盡可能在“,”處或運算符處,換行后最好以運算符打頭,并且以下各行均以該語句首行縮進,但該語句仍以首行的縮進為準,即如其下一行為“{”應與首行對齊。

變量定義最好通過添加空格形成對齊,同一類型的變量最好放在一起。

4、空行

程序文件結構各部分之間空兩行,若不必要也可只空一行,各函數實現之間一般空兩行,由于BCB會自動產生一行“//------”做分隔,另因每個函數還要有函數說明注釋,故通常只需空一行或不空,但對于沒有函數說明的情況至少應再空一行。對自己寫的函數,建議也加上“//------”做分隔。函數內部數據與代碼之間應空至少一行,代碼中適當處應以空行空開,建議在代碼中出現變量聲明時,在其前空一行。類中四個“p”之間至少空一行,在其中的數據與函數之間也應空行。

5、注釋

對注釋有以下三點要求:

A.必須是有意義。

B.必須正確的描述了程序。

C.必須是最新的。

注釋必不可少,但也不應過多,以下是四種必要的注釋:

A.標題、附加說明。

B.函數說明。對幾乎每個函數都應有適當的說明,通常加在函數實現之前,在沒有函數實現部分的情況下則加在函數原型前,其內容主要是函數的功能、目的、算法等說明,參數說明、返回值說明等,必要時還要有一些如特別的軟硬件要求等說明。

C.在代碼不明晰或不可移植處必須有一定的說明。

D.及少量的其它注釋。

注釋有塊注釋和行注釋兩種,分別是指:“/**/”和“//”建議對A用塊注釋,D用行注釋,B、C則視情況而定,但應統(tǒng)一,至少在一個單元中B類注釋形式應統(tǒng)一。

6、代碼長度:

對于每一個函數建議盡可能控制其代碼長度為53行左右,超過53行的代碼要重新考慮將其拆分為兩個或兩個以上的函數。函數拆分規(guī)則應該一不破壞原有算法為基礎,同時拆分出來的部分應該是可以重復利用的。對于在多個模塊或者窗體中都要用到的重復性代碼,完全可以將起獨立成為一個具備公用性質的函數,放置于一個公用模塊中(Common.cpp/Common.h)。


本文版權歸黑馬程序員C/C++學院所有,歡迎轉載,轉載請注明作者出處。謝謝!


作者:黑馬程序員C/C++培訓學院


首發(fā):http://c.itheima.com/


分享到:
在線咨詢 我要報名
和我們在線交談!