c++编程风格培训.pptVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
c编程风格培训,c编程风格,c语言编程风格,c编程风格pdf,c语言编程培训,编程风格,java编程风格,java编程风格pdf,良好的编程风格,sql编程风格

适用范围 编写本规范的目的在于提高软件的正确性、可维护性、可移植性、重用性以及模块间的互操作性。 本规范适用于佳都公司、南京邮电学院信息网络技术研究所软件开发中C++源程序的书写。开发中使用的成品软件的源程序不受此限。如果重用本单位开发的源程序,原则上也应加以修改,以符合本规范的规定。 所有新开发的源程序必须通过代码静态检查,保证符合本规范。 文件分立 除全局函数变量、inline函数以外,C++程序的类定义必须与实现分立。定义在头(.h、.hxx等)文件中,实现在程序(.C、.cpp、.cxx等)文件中。除开发工具(如Visual C++)生成的源程序模块以外,在开发过程中,一个类形成一套(两个)程序文件。提交以后,集成时再行组合。 除特殊情况外,同一个类的函数应集中在一个程序文件中。 函数总行数的限制 每个不可分割的独立模块(如一个函数,包括全局函数和类的成员函数)的长度在开发完成时不得超过150行。维护中不得超过250行。对于超过者应重新修改设计,分离功能,缩短长度。此行数不包括函数头部的说明,但包括函数内部的注释。 大括号的位置和缩进 作为程序分界符的大括号(”{”、”}”)应独立成行,每个左括号之后缩进两个空格。缩进不得使用水平制表符。对于只有一行的程序块(Scope),最好也以大括号括起。对于只有一个if语句的else程序块,可将else和if写在一行。 大括号的位置和缩进(例一) 下面是大括号和缩进的例子: int foo(int k) { int i; i = 3; if ( k 2 ) { return i; } else if ( k 5 ) { return k; } return i + k; } 大括号的位置和缩进(例二) 下面是switch语句的例子: switch ( i ) { case 1: m = 3; break; case 4: l = 3; break; default: m = 5; } 结构化和变量局部化 为保证程序的结构化,禁止使用goto语句。尽量避免使用多个return语句,循环中少使用break和continue语句。 减少全局变量的使用,尽量使变量局部化。原则是能成为类成员变量的,不作为全局变量;可以在成员函数中定义的变量不定义为类成员变量;临时变量在程序块中定义。 宏定义 程序中应避免使用宏定义替代函数的的功能。非特殊情况宏定义(#define伪指令)仅用于定义符号和环境参数。符号和环境参数分为三级:第一级是开发组织中通用的环境参数或符号,各项目必须统一采用,避免重复命名;第二级是项目通用的参数或符号,在项目范围内统一使用;第三级是程序块使用的参数或符号。在程序开发中,不得用常数代替规定使用的参数或符号,以保证程序的可维护性。 命名规则(变量) 变量名:变量名全部用小写字母,单词中间用下划线”_”分隔 变量名前缀(适用于局部变量可适用短变量名如:l, j ,k) 成员变量再加上前缀m_,例如:m_pcl_order 全局变量:以“glb_”作为名称前缀 命名规则(前缀) 双精度型 d 短整型 n 长整型 l 字符型 c 数组 a 无符号类型 u 字符串 sz 指针 p(pp,ppp…表示多重指针) 结构 r 类 cl 命名规则(类、函数) 全局函数:以 “Q_”作为名称前缀 成员函数、局部函数第一个字母小写,名称中的单词应写全,其中单词第一个字母大写 类名:第一个字母大写,名称中的单词应写全。对于系统中已有的标准类名,为与其区别,在其前面加“NP”。如:CString类,对应NPCString。 命名规则(文件名、宏定义) 文件名用前缀区别文件内容,对自动生成的文件,其命名不受此规定限制 表类 db_ 实体类 o_ 操作类 op_ 宏定义:全部大写 内存分配和释放的原则 为最大限度防止内存泄漏,一般情况下,内存的分配和释放应当对称进行,包括如下原则: 在构造函数中分配的内存,在析构函数中释放。如果有几个构造函数,并且分配的内存都各不相同时,析构函数必须能够根据不同的情况分别处理,可以用增加成员变量的方法解决。 函数内部分配的内存在同一函数内释放,在程序块(scope)中分配的内存,在同一程序块中释放。 专门分配内存的函数必须有专门释放内存的函数与之对应,配对使用。 源程序文件头部说明模板 每个源程序文件必须有文件头部说明,文件头部说明包括如下内容: 版权信息; 文件名称; 最初创建时间; 作者姓名; 版本信息; 源文件开发开始时间; 本版本交付时间; 文件修改记录,包括: 修改时间 修改人 修改内容 每个文

文档评论(0)

ajgoaw + 关注
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档