VC++ 編程規(guī)范

VC++ 編程規(guī)范

ID:41033410

大小:92.99 KB

頁數(shù):14頁

時間:2019-08-14

VC++ 編程規(guī)范_第1頁
VC++ 編程規(guī)范_第2頁
VC++ 編程規(guī)范_第3頁
VC++ 編程規(guī)范_第4頁
VC++ 編程規(guī)范_第5頁
資源描述:

《VC++ 編程規(guī)范》由會員上傳分享,免費在線閱讀,更多相關(guān)內(nèi)容在工程資料-天天文庫。

1、VC++編程規(guī)范1.編寫編程規(guī)范的目的?安全:增加代碼的正確性和穩(wěn)定性,使它穩(wěn)定可遵守編程規(guī)范可以大幅度減少各種易犯的錯誤和隱患。?易讀:保證代碼的易讀性和可維護性?美觀:盡量統(tǒng)一項目組內(nèi)人員的編程風(fēng)格?便于代碼調(diào)試和錯誤定位在編碼時就注意留下跟蹤的線索會使錯誤定位和修改更加容易。2.編程規(guī)范的作用范圍只要能寫出高質(zhì)量的程序,并不強求所有程序都必須完全遵循本編碼規(guī)范。原則上:?外來的代碼,只要測試正確,代碼復(fù)查沒有問題,程序文檔齊全,可以有自己的規(guī)范和風(fēng)格?過去的程序,原則上不為了適合本規(guī)范而專門改寫程序。但是如果方便,也可以順手做一些修改,如加一些注釋。?這個規(guī)范主要針對本開發(fā)

2、組新開發(fā)的,用VC++編寫的界面或業(yè)務(wù)邏輯模塊的編寫。某些模塊如果有自己的編程風(fēng)格,請制訂相應(yīng)的文檔加以說明。3.命名規(guī)則包括如下C++要素的命名:類、結(jié)構(gòu)、函數(shù)、變量、常量(包括資源、自定義消息)、宏、自定義類型等命名的主要原則是:?使用有意義的單詞或多個詞組合,一目了然。不要使用人名、項目組名?命名時請考慮名字的唯一性,不要使用容易引起混淆的名稱。?長短要合適。多個詞組合較長時,可以使用單詞的縮寫?主要采用Windows的命名風(fēng)格1.對于類、函數(shù)和變量,每個單詞的首字符大寫,其余小寫2.常量和宏定義全部大寫3.自己定義的類型(使用了typedef)全部大寫,指針使用LP大寫前

3、綴不要用MyFile.cpp,test1.h,bitmap001.bmp,nByte,CClass等等沒有意義的名字。臨時使用的文件的名字要用函數(shù)生成,避免使用“硬名字”,如temp.123。不能使用程序員的姓名或縮寫來命名,如yls.cpp。第14頁(共14頁)1.1.類的命名?以大寫的C開頭,采用如下格式:CXXXYYYYY其中XXX指的是模塊名稱的縮寫,參見附錄2。YYYYY是類本身的名稱例如:CAdmDlgSearchID1.2.結(jié)構(gòu)/自定義類型?結(jié)構(gòu)/聯(lián)合命名使用typedef后必須全部大寫,單詞中間可以使用下劃線連接。?如果不使用typedef,則在全部大寫的名字前加

4、st。?結(jié)構(gòu)變量的命名應(yīng)盡量使用該結(jié)構(gòu)的縮寫前綴。前綴使用兩個以上的小寫字母。?自己定義的類型(使用了typedef)全部大寫,指針使用LP大寫前綴1.3.函數(shù)?使用動賓詞組表達函數(shù)實際所作的事?同名的函數(shù)(重載函數(shù))在功能上應(yīng)該完全相同,在參數(shù)上的差別也應(yīng)一目了然?不得出現(xiàn)名字非常相近但功能不同的函數(shù).如CreatePage1(),CreatePage2()等1.4.變量變量命名原則上使用匈牙利命名法,一般由“前綴+類型修飾+主體”等部分組成,如:g_strRegHome?前綴(以下劃線分割)g_:表示全局變量(包含全局靜態(tài)變量)如:g_lpEnvt_:表示線程的全局變量:如:

5、int__declspec(thread)t_nCountm_:表示類成員變量(包含類靜態(tài)變量)如:m_dwFlagsg_str:表示全局的字符串常量如:constTCHARg_strRegHome[]=_T(“Software\Founder\FounderAuthorTool\4.0”);?類型修飾(小寫字母),參見附錄1。?主體使用一個或多個單詞表示變量代表的確切含義,參見下面的大小寫規(guī)則窗口菜單句柄等命名:hWndxxxx,hMenuxxxx1.5.常量(包括資源、自定義消息,枚舉,宏等)?宏定義和常量全要用大寫?自定義的消息WM_A_?資源ID的命名:參見附錄2:

6、資源ID的命名。?枚舉類型:命名方式類似結(jié)構(gòu),相應(yīng)的前綴為enum。枚舉值的命名一律大寫(等同于宏)。枚舉變量的命名按整數(shù)命名。?內(nèi)部的限制量,如列表的最大長度,文件名的最大長度等,統(tǒng)一使用MAX_xxxx_xxxx_LEN來命名,并集中放置在一個頭文件中。數(shù)據(jù)庫相關(guān)的限制值放在另一個頭文件中定義。第14頁(共14頁)1.編程規(guī)則1.1.類?對自己定義的復(fù)雜類一定提供構(gòu)造和析構(gòu)函數(shù),?析構(gòu)函數(shù)前一律加virtual,防止因繼承而產(chǎn)生的memoryleak。(有兩種特殊情況:1.部支持位拷貝。2.某些特殊情況析構(gòu)函數(shù)必須不是虛函數(shù)???)?在構(gòu)造函數(shù)中初始化所有的成員變量,在析構(gòu)函

7、數(shù)中刪除可能申請的內(nèi)存空間。?推薦采用公開的Get/Set函數(shù)對成員變量進行存儲,而把成員變量設(shè)成protected或者private,并加上注釋。?聲明成員函數(shù)和變量時要按功能分組,給外部用的要排在前面?類的繼承深度不要超過4層?類的功能要單一,公共函數(shù)個數(shù)一般要小于20個(專門用于保存數(shù)據(jù)的類除外)內(nèi)部protected函數(shù)以及private函數(shù)個數(shù)一般應(yīng)小于20個1.2.函數(shù)?長度一般禁止超過200行?必須檢查輸入值是否合法?實現(xiàn)(成員)函數(shù)功能之前必須使用ASSERT()

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文

此文檔下載收益歸作者所有

當(dāng)前文檔最多預(yù)覽五頁,下載文檔查看全文
溫馨提示:
1. 部分包含數(shù)學(xué)公式或PPT動畫的文件,查看預(yù)覽時可能會顯示錯亂或異常,文件下載后無此問題,請放心下載。
2. 本文檔由用戶上傳,版權(quán)歸屬用戶,天天文庫負責(zé)整理代發(fā)布。如果您對本文檔版權(quán)有爭議請及時聯(lián)系客服。
3. 下載前請仔細閱讀文檔內(nèi)容,確認文檔內(nèi)容符合您的需求后進行下載,若出現(xiàn)內(nèi)容與標(biāo)題不符可向本站投訴處理。
4. 下載文檔時可能由于網(wǎng)絡(luò)波動等原因無法下載或下載錯誤,付費完成后未能成功下載的用戶請聯(lián)系客服處理。