- 1、本文档共19页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
ZN-22软件编码规范指南(C_C)
Q/HSNW-ZN-22
软件设计编码规范指南
_C/C++语言
编 制: 年 月 日
审 核: 年 月 日
批 准: 年 月 日
修订历史记录
版本 作者 参与者 起止日期 备注 1.0 万思军 2005-10-27 讨论通过本规范 1.1 万思军 2005-11-15 添加版本管理部分 1.2 万思军 2006-6-7 重新修订注释方式,进行简化。
制表符的使用定义 1.3 万建林 2009-8-10 修订版本管理,进行简化。
目录
1 简介 4
1.1 目的 4
1.2 范围和说明 4
1.3 定义、首字母缩写词和缩略语 4
1.4 参考资料 4
2 文件结构 5
2.1 头文件 5
2.2 内联函数定义文件 5
2.3 实现文件 5
2.4 版本管理 6
3 命名规则 7
3.1 类/结构 7
3.2 函数 7
3.3 变量 8
3.4 常量 9
3.5 宏、枚举值 9
4 代码风格与版式 10
4.1 类/结构 11
4.2 函数 13
4.3 变量、常量 15
4.4 宏 15
5 附录 17
5.1 常用注释一览 17
5.1.1 文件头注释 17
5.1.2 标准类注释 17
5.1.3 标准函数注释 18
5.1.4 语句/函数组 18
5.1.5 语句块 18
5.1.6 分割带 18
简介
目的
软件设计编码规范的目的是说明如何编写代码使用编程语言时将要用到的约定oxygen风格的注释,以便以后能自动产生文档。
强制规定一个制表符4个半空格符4个半空格符4个半空格符本文档中的编码规范都以:
规则(或建议) 解释 的格式给出,其中强制性规则使用黑色,建议性规则使用灰色。
术语 解释 API 应用程序编程接口 UI 用户界面 GUI 图形用户界面 名称 作者 发布日期 李月高 2003 高质量C++/C编程指南 林锐 博士 2001 C++编码规范与指导 白杨 2009-05-07 D 2006 文件结构
头文件头文件通常由以下几部分组成: 文件头注释 每个头文件,无论是内部的还是外部的,都应该由一个规范的文件头注释作为开始。 预处理块 为了防止头文件被重复引用,应当用ifndef/define/endif结构产生预处理块。 函数和类/结构的声明等 声明模块的接口 需要包含的内联函数定义文件(如果有的话) 如果类中的内联函数较多,或者一个头文件中包含多个类的定义(不推荐),可以将所有内联函数定义放入一个单独的内联函数定义文件中,并在类声明之后用“#include”指令把它包含进来。 头文件的编码规则:
分割多组接口(如果有的话) 如果在一个头件中定义了多个类或者多组接口(不推荐),为了便于浏览,应该在每个类/每组接口间使用分割带把它们相互分开。 关于头文件的完整例子,请参见:头文件例子
内联函数定义文件如上所述,在内联函数较多的情况下,为了避免头文件过长、版面混乱,可以将所有的内联函数定义移到一个单独的文件中去,然后再用#include指令将它包含到类声明的后面。这样的文件称为一个内联函数定义文件。
按照惯例,应该将这个文件命名为“filename.inl”,其中“filename”与相应的头文件和实现文件相同。
内联函数定义文件由以下几部分组成:
文件头注释 每内联函数定义文件都应该由一个规范的文件头注释作为开始 内联函数定义 内联函数的实现体 内联函数定义文件的编码规则:
分割多组接口(如果有的话) 如果在一个内联函数定义文件中定义了多个类或者多组接口的内联函数(不推荐),必须在每个类/每组接口间使用分割带把它们相互分开。 关于内联函数定义文件的完整例子,请参见:内联函数定义文件例子实现文件实现文件包含所有数据和代码的实现体。实现文件的格式为:文件头注释 每个实现文件都应该由一个规范的文件头注释作为开始 对配套头文件的引用 引用声明了此文件实现的类、函数及数据的头文件 对一些仅用于实现的头文件的引用(如果有的话) 将仅与实现相关的接口包含在实现文件里(而不是头文件中)是一个非常好的编程习惯。这样可以有效地屏蔽不应该暴露的实现细节,将实现改变对其它模块的影响降低到最少 。 程序的实现体 数据和函数的定义 实现文件的编码规则:
分割每个部分 在本地(静态)定义和外部定义间,以及不同接口或不同类的实现之间,应使用分割带相互分开。 关于实现文件的完整例子,请参见:实现文件例子VS_VERSION_INFO部分。 无资源文件控制台程序 先手动添加资源文件,然后修改VS_VERSION_INFO部分。 变更记录 文件头注释中记录每次代码改动
文档评论(0)