预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共14页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

软件编码规范C++版Ver1.1(草稿)项目:时间:编号: 北京天正工程软件有限公司BeijingTangentEngineeringSoftwareCo.Ltd. 天正软件编码规范 命名规范 通则 在所有命名中,都应使用标准的英文单词或缩写,避免使用汉语拼音。 所有命名都应遵循达意原则,即名称应含义清晰、明确。 所有命名都不易过长,在可表达清晰的前提下越简洁越好。 所有命名都应尽量使用全称。 在类型名称特别复杂的时候,应使用typedef来定义别名。 标识符 标识符的命名要清晰、明了,有明确含义,同时使用完整的单词或大家基本可以理解的缩写,避免使人产生误解。(较短的单词可通过去掉“元音”形成缩写;较长的单词可取单词的头几个字母形成缩写;一些单词有大家公认的缩写) 如下单词的常用缩写applicationapp argumentarg averageavg blockblk bufferbuf commandcmd controlctrl databasedb deletedel descriptiondesc dialogdlg dictionarydict dimensiondim distancedist documentdoc entityent escapeesc flagflg increaseinc informationinfo lengthlenlibrarylib managermgr memorymem messagemsg objectobj passwordpwd picturepic ploylinepline pointerptr positionpos recordrec referenceref resourcersc screenscr serversrv sourcesrc systemsys temptmp texttxt versionver windowwndVC++中常用控件缩写Animateani CheckBoxchk ComboBoxcmb Editedt GroupBoxgrp ListBoxlst PicturepicProgressprg PushButtonbtn RadioButtonrad ScrollBarsb Slidersld Staticstc TabControltab长的标识符应使用缩写来缩短长度,而特短的标识符应该避免使用缩写。 更恰当: intiFlag HMODULEhLoadedSysRsc不恰当: intiFlg HMODULEhLoadedSystemResource变量和封装体命名中单词或缩写的第一个字母应大写,其它字母小写,单词和单词之间直接连接,不得有其它字符。在宏定义中全部用大写,单词与单词之间必须用下划线连接。 正确: TempResource #defineREG_KEY错误: Temp_Resourcetemp_resource tempresource #defineReg_Key除了编译开关/头文件等特殊应用,应避免使用_EXAMPLE_TEST_之类以下划线开始和结尾的定义。 对于变量命名,禁止取单个字符(如i、j、k...),命名除了要有具体含义外,还能表明其变量类型、数据类型等,但i、j、k等作局部循环变量是允许的。 命名时,如果需要进一步分类时,分类属性应放在前面。 正确: CListBoxm_wndLstFonts; CComboBoxm_wndCmbColors;错误: CListBoxm_wndFontsLst; CComboBoxm_wndColorsCmb;命名中若使用特殊约定或缩写,则要有注释说明。(应该在源文件的开始之处,对文件中所使用的缩写或约定,特别是特殊的缩写,进行必要的注释说明) 在命名规范中没有规定到的地方,才可以使用自己特有的命名风格,要自始至终保持一致,不可来回变化。 除非必要,不要用数字或较奇怪的字符来定义标识符。 正确: #defineEXAMPLE_TEST TestLockDriver错误: #defineEXAMPLE_0 Test123在同一软件产品内,应规划好接口部分标识符的命名,防止编译、链接时产生冲突,可在普通标识基础上加上模块标识。 示例: 在TGRX模块中可定义为CTGRxObjectg_rxRegistry 在TGDB模块中可定义为CTGDbBlockRecordg_dbGlobal 在TGGui模块中可定义为CTGUiFrameWndg_uiCmdMgr命名规范必须与所使用的系统风格保持一致,并在同一项目中统一,比如有关STL的代码应使用STL中的全小写加下划线的风格,有关MFC的代码则使用大小写混排的方式。 封装体