- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
MF开发编程规范(参考).doc
MFC开发编程规范
**软件公司软件开发规范
(试行版)
在公司W1队协作幵发的情况下,编程吋应该强调的一个ffi耍方而是程序的易谈性,在保证软件的速度 等性能指称能满足用户耑求的情况K,能让其他程序员容易读怵你的程序。一?鲜明的编程风格,可 以让协 、后继者和自己一目了然,在很短的吋问内看淸程序的结构,理解设计的思路。人人的提 萵代码的可读性、可重用性、程序健壮性、可移拍:性和可维护性。
制定本编程规范的鬥的是为了提岛公司的软件开发效率及所开发的软件的可维护性,提髙软件的质量 本规范由程序风格、命名规则、 规范、程序健壮性、可移植性、错误处理以及软件的模块化规范 等部分飢成。
一、程序风格:
1、严格采用阶梯层次组织程序代码:
各层次缩进的分格采川VC的缺宵风格,即每M次缩进为4格,括号位丁?下一行。耍求相叫配的人括 号在同一列,对继行则要求再缩进4格。例如:
void main()
long II;//循环变量 long ISum;//用来记录和 float fAvg;//川來求平均值
//对数进行累加。
for( 11=0;1110;11++) {
ISum=ISum+ll;
//求平均值。
fAvg=ISum/10.0;
2、 提示信息字符中的位置
在程序屮需要给出的提示字符串,为了支持多种语言的开发,除丫一些给调试用的临时倍息外,其他 所有的提示信息必须定义在资源屮。
3、 对变量的定义,烬量位于函数的开始位H。
二、命名规则:
1、变量名的命名规则
、变量的命名规则要求用“匈牙利法则”。即开头字母川变量的类m, ?余部分用变?的英文意思或 其英文意思的缩写,尽姑避免川屮文的拼咅,嬰求平词的第一个字母应人写。
即:变蛩名=变跫类型+变g的英文意思(或缩写)
对Hh通用的变量,在定义时加入 说明,变量足义尽量可能放在函数的开始处。
见下表:
bool(BOOL)用 b 开头 blsParent
byte(BYTE)用 by 开头 byFlag
short(int)用 n 开头 nStepCount
long(LONG)用 I 开头 ISum
char(CHAR)用 c 开头 cCount
float(FLOAT)用 f 开头 fAvg
double(DOUBLE) MJ d 开失 dDeta
void(VOID)用 v 开头 vVariant
unsigned short(WORD)用 w 开爻 wCount
unsigned long(DWORD)用 dw JT?头 dwBroad
HANDLE (HINSTANCE)用 h 开头 hHandle
DWORD 用 dw 开头 dwWord
LPCSTR(LPCTSTR) MJ str ??头 strString
用0结俺的字符中sz开久* szFileName
对未给出的变量类型要求提出并给出命名建议给技术委员会。
、指针变量命名的基本原则为:
对一茧指针变觉的基本原则为:
p”+变量类沏前缀+命名
如一个float*型应该农?为pfStat
对多重指针变量的基本规则为:
二重指针:“pp”+变量类型前缀+命名
三重指针:“ppp”+变景类型前缀+命名
、伞《变量用g_开义,如一个伞局的长型变量记义为gJFailCount,即:变量名=g_+变量类型+变量 的英文意思(或缩写)
、静态变量用s_开头,如一个静态的指针变量定义为s_plPerv_lnst,G]J:变量名=s_+$遺类型+变 量的英文意思(或缩写)
、成变量用m_开头,如-个长型成W变量定义为mJCount;即:变量名=m_+变量类型+变量的英 文意思(或缩写)
、对枚举类型(enum)屮的变量,要求川枚举变量或其缩写做前缀。并且要求川大写。
如:enum cmEMDAYS
EMDAYS_MONDAY;
EMDAYS_TUESDAY;
、对stmct、union、class变S?的命名耍求定义的类型用大写。并耍加上前缀,其内部变S的命名 规则与变量命名规则一致。
结构一般用S开头
如:struct ScmNPoint
{
int nX;//点的X位置
int nY;//点的丫位置
};
联合体一般用U开失
如:union UcmLPoint
{
long IX;
long IY;
}
类一般用C开尖
如:
class CcmFPoint
{
public:
float fPoint;
};
对-?般的结构应该足义为类模板,为以后的扩胺性考虑
如:
template class TYPE
class CcmTVector3d
{
public:
TYPE x,y,z;
};
、对常量(包括错误的编码)命名,耍求常量名用人写,常量名用英文表达其意忍。
如:#define CM_FILE_NOT_FOUND C
文档评论(0)