變數名命名

2021-08-08 04:45:19 字數 2120 閱讀 7624

有些東西不明確寫出來就難以確定下來,個人寫**的命名風格一直沒有穩定下來,今天寫個筆記明確幾類主要的命名,希望可以逐步養成自己的程式設計風格。

1.類名/型別名: t_每個單詞首字母大寫【例:t_typename】;

2.列舉型別:反應型別的複數形式【例:enum_colors】;

3.函式名:每個單詞首字母大寫【例:functionname】;

4.常量、預處理巨集全部大寫和用下劃線分隔單詞【例:all_caps】;

5.區域性變數名:第乙個單詞小寫,後續每個單詞的首字母大寫【例:variablename】;

6.全域性變數名:g_variablename;

7.成員變數名:m_variablename;

8.列舉變數名:反應型別和取值【例:color_red、color_blue】;

附變數名命名自省問題和注意要點

命名的一般注意事項

1.名字完整並準確地表達了變數所代表的含義嗎?

2. 名字反映了現實世界的問題而不是程式語言方案嗎?

3. 名字足夠長,可以讓你無須苦苦思索嗎?

4. 如果有計算值限定符,它被放在名字的最後嗎?

5. 名字中用count或者index來代替num了嗎?

為特定型別的資料命名

1.迴圈下標的名字有意義嗎?(如果迴圈的長度超出了一兩行**或者出現了巢狀迴圈,那麼就應該是i、j或者k以外的其他名字)?

2. 所有的「臨時」變數都重新命以更有意義的名字了嗎?

3. 當布林變數的值為真時,變數名能準確表達其含義嗎?

4. 列舉型別的名字中含有能夠表示其類別的字首或字尾了嗎?例如,把color_用於color_red, color_green, color_blue等了嗎?

5. 具名常量是根據它所代表的抽象實體而不是它所代表的數字命名的嗎?

命名規則

1.規則能夠區分區域性資料、類的資料和全域性資料嗎?

2. 規則能夠區分型別名、具名常量、列舉型別和變數名嗎?

3. 規則能夠在編譯器不強制檢測唯讀引數的語言裡標識出子程式中的輸入引數嗎?

4. 規則盡可能地與語言的標準規則相容嗎?

5. 名字為了可讀性而加以格式化嗎?

短名字

1.**用了長名字嗎(除非有必要使用短名字)?

2. 是否避免只為了省乙個字元而縮寫名字?

3. 所有單詞的縮寫方式都一致嗎?

4. 名字能夠都出來嗎?

5. 避免使用容易被看錯或者讀錯的名字嗎?

6. 在縮寫對照表裡對段名字作出說明了嗎?

常見命名問題:要避免使用:

1.容易讓人誤解的名字;

2. 有相近含義的名字;

3. 只有一兩個字元不同的名字;

4. 發音相近的名字;

5. 包含數字的名字;

6. 為了縮寫而故意拼錯的名字;

7. 英語中經常拼錯的名字;

8. 與標準庫子程式名或者預定義變數名衝突的名字;

9. 過於隨意的名字;

10. 含有難讀字元的名字;

1.好的變數名是提高程式可讀性的一項關鍵要素。對特殊種類的變數,比如迴圈下標和狀態變數,需要加以特殊的考慮;

2. 名字要盡可能地具體。那些太模糊或者太通用以至於能夠用於多種目的的名字通常都是很不好的;

3. 命名規則應該能夠區別區域性資料、類資料和全域性資料。它們還應當可以區分型別名、具名常量、列舉型別名字和變數名;

4. 無論做那種型別專案,都應該採用某種變數名規則。你所採用的規則的種類取決於你的程式的規模,以及專案成員的人數;

5. 現代程式語言很少需要用到縮寫。如果你真的要使用縮寫,請使用專案縮寫詞典或者標準字首來幫助理解所用縮寫;

6. **閱讀的次數遠遠多於編寫的次數。確保你所取的名字更側重於閱讀方便而不是便攜方便。

變數名命名規則

變數命名規則 識別符號 age 18 由字母 數字 命名 不能以資料開頭 嚴格區分大小寫 不能python的關鍵字 檢視python有哪些關鍵字?import keyword print keyword.kwlist false none true and as assert async await...

C C 變數名命名規範

安全 增加 的正確性和穩定性,減少各種易犯的錯誤和隱患 易讀 保證 的易讀性和可維護性 美觀 統一開發人員的程式設計風格 簡潔 易於除錯 提高問題定位的命中率 規則 scope 作用域 basetag 資料型別 name 變數名字 例 cstring m csmyname int m nage sc...

python批量命名變數 建立順序變數名

在搞多執行緒時,想要批量給執行緒命名。在網上搜了半天。用exec eval無果後。createvar locals myvarlist 存放自己建立的變數 for i in range 9 createvar thread str i i thread str i 這樣,變數就在列表裡了!ps 因為...