注释编程规范[出自华为内部资料]
开发的时候为了表示某个文件或者函数的功能,一般采取的方法。
2-1:一般情况下,源程序有效注释量必须在20%以上。
说明:注释的原则是有助于对程序的阅读理解,在该加的地方都加了,注释不宜太多也不能太少,注释语言必须准确、易懂、简洁。
2-2:说明性文件(如头文件.h文件、.inc文件、.def文件、编译说明文件.cfg等)头部应进行注释,注释必须列出:版权说明、版本号、生成日期、作者、内容、功能、与其它文件的关系、修改日志等,头文件的注释中还应有函数功能简要说明。
示例:下面这段头文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。
1. /*************************************************
2. Copyright (C), 1988-1999, Huawei Tech. Co., Ltd.
3. File name: // 文件名
4. Author: Version: Date: // 作者、版本及完成日期
5. Description: // 用于详细说明此程序文件完成的主要功能,与其他模块
6. // 或函数的接口,输出值、取值范围、含义及参数间的控
7. // 制、顺序、独立或依赖等关系
8. Others: // 其它内容的说明
9. Function List: // 主要函数列表,每条记录应包括函数名及功能简要说明
10. 1. ....
11. History: // 修改历史记录列表,每条修改记录应包括修改日期、修改
12. // 者及修改内容简述
13. 1. Date:
14. Author:
15. Modification:
16. 2. ...
17. *************************************************/
¹2-3:源文件头部应进行注释,列出:版权说明、版本号、生成日期、作者、模块目的/功能、主要函数及其功能、修改日志等。
示例:下面这段源文件的头注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。
1. /************************************************************
2. Copyright (C), 1988-1999, Huawei Tech. Co., Ltd.
3. FileName: test.cpp
4. Author: Version : Date:
5. Description: // 模块描述
6. Version: // 版本信息
7. Function List: // 主要函数及其功能
8. 1. -------
9. History: // 历史修改记录
10. <author> <time> <version > <desc>
11. David 96/10/12 1.0 build this moudle
12. ***********************************************************/
说明:Description 一项描述本文件的内容、功能、内部各部分之间的关系及本文件与其它文件关系等。History 是修改历史记录列表,每条修改记录应包括修改日期、修改者及修改内容简述。
¹2-4:函数头部应进行注释,列出:函数的目的/功能、输入参数、输出参数、返回值、调用关系(函数、表)等。
示例:下面这段函数的注释比较标准,当然,并不局限于此格式,但上述信息建议要包含在内。
1. /*************************************************
2. Function: // 函数名称
3. Description: // 函数功能、性能等的描述
4. Calls: // 被本函数调用的函数清单
5. Called By: // 调用本函数的函数清单
6. Table Accessed: // 被访问的表(此项仅对于牵扯到数据库操作的程序)
7. Table Updated: // 被修改的表(此项仅对于牵扯到数据库操作的程序)
8. Input: // 输入参数说明,包括每个参数的作
9. // 用、取值说明及参数间关系。
10. Output: // 对输出参数的说明。
11. Return: // 函数返回值的说明
12. Others: // 其它说明
13. *************************************************/