日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 人文社科 > 生活经验 >内容正文

生活经验

C/C++ 编程规范(02)— 标识符命名

發(fā)布時間:2023/11/28 生活经验 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 C/C++ 编程规范(02)— 标识符命名 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
  1. 標(biāo)識符的命名要清晰、明了,有明確含義,同時使用完整的單詞或大家基本可以理解的縮寫,避免使人產(chǎn)生誤解。

說明:較短的單詞可通過去掉“元音”形成縮寫;較長的單詞可取單詞的頭幾個字母形成縮寫;一 些單詞有大家公認(rèn)的縮寫。
示例:如下單詞的縮寫能夠被大家基本認(rèn)可。

temp 可縮寫為 tmp ;
flag 可縮寫為 flg ;
statistic 可縮寫為 stat ;
increment 可縮寫為 inc ;
message 可縮寫為 msg ;
  1. 命名中若使用特殊約定或縮寫,則要有注釋說明。

說明:應(yīng)該在源文件的開始之處,對文件中所使用的縮寫或約定,特別是特殊的縮寫,進(jìn)行必要的注釋說明。

  1. 自己特有的命名風(fēng)格,要自始至終保持一致,不可來回變化。

說明:個人的命名風(fēng)格,在符合所在項目組或產(chǎn)品組的命名規(guī)則的前提下,才可使用。(即命名規(guī)則中沒有規(guī)定到的地方才可有個人命名風(fēng)格)。
?

  1. 對于變量命名,禁止取單個字符(如 i、j、k…),建議除了要有具體含義外,還能表明其變量類型、數(shù)據(jù)類型等,但 i、j、k 作局部循環(huán)變量是允許的。

說明:變量,尤其是局部變量,如果用單個字符表示,很容易敲錯(如 i 寫成 j),而編譯時又檢查不出來,有可能為了這個小小的錯誤而花費大量的查錯時間。

示例:下面所示的局部變量名的定義方法可以借鑒。

int liv_Width

其變量名解釋如下:

l局部變量(Local)(其它:g全局變量(Global)…)
i數(shù)據(jù)類型(Interger)
v變量(Variable)(其它:c常量(Const)…)

Width 變量的含義。
?

這樣可以防止局部變量與全局變量重名。

  1. 命名規(guī)范必須與所使用的系統(tǒng)風(fēng)格保持一致,并在同一項目中統(tǒng)一,比如采用 UNIX 的全小寫加下劃線的風(fēng)格或大小寫混排的方式,不要使用大小寫與下劃線混排的方式,用作特殊標(biāo)識如標(biāo)識成員變量或全局變量的 m_g_,其后加上大小寫混排的方式是允許的。

示例: Add_User 不允許,add_userAddUserm_AddUser 允許。

  1. 除非必要,不要用數(shù)字或較奇怪的字符來定義標(biāo)識符。
示例:如下命名,使人產(chǎn)生疑惑。
#define _EXAMPLE_0_TEST_
#define _EXAMPLE_1_TEST_
void set_sls00( BYTE sls );應(yīng)改為有意義的單詞命名
#define _EXAMPLE_UNIT_TEST_
#define _EXAMPLE_ASSERT_TEST_
void set_udt_msg_sls( BYTE sls );
  1. 在同一軟件產(chǎn)品內(nèi),應(yīng)規(guī)劃好接口部分標(biāo)識符(變量、結(jié)構(gòu)、函數(shù)及常量)的命名,防止編譯、鏈接時產(chǎn)生沖突。

說明:對接口部分的標(biāo)識符應(yīng)該有更嚴(yán)格限制,防止沖突。如可規(guī)定接口部分的變量與常量之前加上“模塊”標(biāo)識等。

  1. 用正確的反義詞組命名具有互斥意義的變量或相反動作的函數(shù)等。

說明:下面是一些在軟件中常用的反義詞組。

add / remove 
begin / end 
create / destroy
insert / delete 
first / last 
get / release
increment / decrement 
put / get
add / delete 
lock / unlock 
open / close
min / max 
old / new 
start / stop
next / previous 
source / target 
show / hide
send / receive 
source / destination
cut / paste 
up / down

示例:

int min_sum;
int max_sum;
int add_user( BYTE *user_name );
int delete_user( BYTE *user_name );
  1. 除了編譯開關(guān)/頭文件等特殊應(yīng)用,應(yīng)避免使用 _EXAMPLE_TEST_ 之類以下劃線開始和結(jié)尾的定義 。

總結(jié)

以上是生活随笔為你收集整理的C/C++ 编程规范(02)— 标识符命名的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。