软件编码规范文档.doc

软件编码规范文档.doc

ID:58874794

大小:142.50 KB

页数:19页

时间:2020-09-21

软件编码规范文档.doc_第1页
软件编码规范文档.doc_第2页
软件编码规范文档.doc_第3页
软件编码规范文档.doc_第4页
软件编码规范文档.doc_第5页
资源描述:

《软件编码规范文档.doc》由会员上传分享,免费在线阅读,更多相关内容在行业资料-天天文库

1、...C++设计编码规V1.00(试用版)设备开发部黄焕斌.......目录重要提示4背景41文件组织规则41.1命名41.2目录41.3预处理41.4注释52代码组织规则62.1空行62.2换行62.3空格62.4对齐72.5就近原则72.6精简原则73命名规则93.1自注释93.2变量93.3函数93.4类型103.5宏103.6常量104设计规则114.1识别类和函数114.2构造函数114.3封装性124.4函数参数124.5函数返回值134.6契约134.7规模144.8名字空间144.9类型转换144.10常量144.11联1

2、44.12静态变量144.13编译依赖154.14可重入155存管理规则16.......5.1模块化165.2静态分配165.3new/delete165.4有效性165.5正确释放165.6拷贝166注释规则176.1有效性176.2普通注释176.3Doxygen注释176.4定义176.5申明186.6模块187维护规则197.1消除警告197.2代码修改197.3标本兼治19参考资料20.......重要提示本规中的示例代码都在表格框中显示,绿色的表格框表示正确的示例代码,红色的表格框表示不建议的示例代码。背景C++是大华设备软

3、件和平台软件开发的主要软件,在新的软件框架里,两种平台的组件甚至是共用的。统一的代码风格,良好的设计风格,有利于代码的实现和阅读,有利于减少代码错误和提高代码效率,能有效地促进技术的交流和发展。常见的代码规都异常冗长,调调框框太多。本规力求以简明的容,概括一些重要的规则,将相似的规则进行提炼集中描述,并提供对照的示例代码加深理解。规的使用者花半个小时左右,就可以熟悉整个规。所有大华基于新软件框架的底层组件,业务组件,应用组件都必须遵守此规。例外本规是强制要求,不过有些情况例外:与第三方库有关的代码:比如stl,boost,json等等,使

4、用、移植这些库时,相关的代码可以按照这些库的规。Windows代码:主要指基于公共软件框架,同时使用了非公共组件框架的其他API接口的组件,可以继续保留Windows的规。1文件组织规则1.1命名所有的目录和文件名使用大写字母开头的单词组合,目录词之间可以用空格分开。引用文件名时要严格区分大小写。与操作系统关系密切的工程的命名可以参考操作系统的规则。Timer.cpp//源文件Timer.h//头文件Font.bin//资源文件Config1//配置文件.......1.1目录一个大的工程是由多个组件或模块组成的,对于每个组件或模块,其代

5、码应集中管理,并具备完整的设计文档和单元测试代码,用子目录分类存放。目录或文件说明Bin测试程序目录Doc设计文档目录Include依赖的组件头文件目录与本组件的外部接口头文件目录,映射到其他地址Lib不同平台生成的库和依赖的库文件目录Makefile.ConfigsMakefile的不同平台的配置文件目录Src源文件,部头文件Test单元测试代码MakefileallRules.mkMakefile文件,一次性编译Makefile.Configs目录下所有配置对应的库,测试程序1.2预处理为了防止头文件被重复引用,使用ifndef/de

6、fine/endif结构产生预处理块。预处理宏中的单词应与文件名基本一致。//文件名为Guard.h#ifndef__GUARD_H__#define__GUARD_H__//Guard类的定义...#endif//__GUARD_H__1.3注释源文件和头文件的头部都应进行注释,列出svn文件ID,申明,文件描述(说明是什么模块或什么类对应的文件),修改记录(修改时间、svn作者、修改容),可使用va模板。对于新加入svn的文件,应该其文件属性的svn属性列表中加入(svn:keywords,Id)属性。不要和文件中的类或模块的注释混淆

7、。////"$Id$“////Copyright(c)1992-2007,ZheJiangDahuaTechnologyStockCO.LTD.//AllRightsReserved.////Description://Revisions:Year-Month-DaySVN-AuthorModification.......//1代码组织规则1.1空行类、结构、联合、函数、枚举等定义结束后,应加空行。类定义部相关的成员变量或操作之间不加空行,其他地方应加空行。函数体,逻揖上密切相关的语句之间不加空行,其它地方应加空行。源文件和头文件末尾保

8、留一个空行。classA{};classB;1.2换行每行代码只写一条语句。拆分复杂的复合表达式。代码行长度控制在80左右。长表达式在低优先级操作符处拆分成新行,操作符放在新行之首。if(lo

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。