注释规范

转载地址1: http://blog.csdn.net/scythe666/article/details/48177605

二、具体规范

有的项目可能要求注释占到总行数的额50%

2.1 源文件头部注释

Ø 列出:作者、编写日期和描述。 
Ø 示例:

/* 
* Copyright:bupt
* funtion: 端口选择器实体
* Date:2015-09-01
* Author: Bill Wang
*/
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6

每行不要超过80个字符的宽度。

2.2 函数头部注释

Ø 列出:功能、输入参数、输出参数、返回值、调用关系(函数、表)等。 
Ø 示例:下面这段函数的注释比较标准,当然,并不局限于此格式,但上述信息建议 
要包含在内。

/*************************************************
Function:       // 函数名称
Description:    // 函数功能、性能等的描述
Calls:          // 被本函数调用的函数清单
Table Accessed: // 被访问的表(此项仅对于牵扯到数据库操作的程序)
Table Updated: // 被修改的表(此项仅对于牵扯到数据库操作的程序)
Input:          // 输入参数说明,包括每个参数的作
                  // 用、取值说明及参数间关系。
Output:         // 对输出参数的说明。
Return:         // 函数返回值的说明
Others:         // 其它说明
*************************************************/
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12

3.3 数据结构声明的注释(包括数组、结构、类、枚举等)

这个就是最常见的注释,可用多个斜杠引起注意

如果其命名不是充分自注释的,必须加以注释。对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释放在此域的右方。

Ø 示例:可按如下形式说明枚举/数据/联合结构。

/////!!!端口选择器类型
enum WinSwitcherType{
    WS_NONE = 0, //不显示
    WS_NAME, //名字
    WS_PORT_SINGLE,//单端口
    WS_PORT_DOUBLE,//双端口
    WS_VALUE_TEXT,//值 文本
    WS_VALUE_INT,//值 数字 整型
    WS_VALUE_DOUBLE,//值 数字 浮点型
    WS_VALUE_BOOL,//值 文本
    WS_FILW_PATH, //文件路径
    WS_INPORT //端口输入
};
 
 
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13

3.4 全局变量的注释

Ø 包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。 
Ø 示例:

/* The ErrorCode when SCCP translate */
/* Global Title failure, as follows */      // 变量作用、含义
 
 
  • 1
  • 2
  • 1
  • 2

—END—

1 源文件头部注释

Ø 列出:版权、作者、编写日期和描述。

Ø 示例:

[cpp]  view plain  copy
  1. /************************************************* 
  2. Copyright:bupt 
  3. Author: 
  4. Date:2010-08-25 
  5. Description:描述主要实现的功能 
  6. **************************************************/  
 

每行不要超过80个字符的宽度。

2 函数头部注释

/功能、输入参数、输出参数、返回值、调用关系(函数、表)等。

Ø 示例:下面这段函数的注释比较标准,当然,并不局限于此格式,但上述信息建议

要包含在内。

 

[cpp]  view plain  copy
  1. /************************************************* 
  2. Function:       // 函数名称 
  3. Description:    // 函数功能、性能等的描述 
  4. Calls:          // 被本函数调用的函数清单 
  5. Table Accessed: // 被访问的表(此项仅对于牵扯到<a href="http://lib.csdn.net/base/mysql" class='replace_word' title="MySQL知识库" target='_blank' style='color:#df3434; font-weight:bold;'>数据库</a>操作的程序) 
  6. Table Updated: // 被修改的表(此项仅对于牵扯到数据库操作的程序) 
  7. Input:          // 输入参数说明,包括每个参数的作 
  8.                   // 用、取值说明及参数间关系。 
  9. Output:         // 对输出参数的说明。 
  10. Return:         // 函数返回值的说明 
  11. Others:         // 其它说明 
  12. *************************************************/  
 

 

3 数据结构声明的注释(包括数组、结构、类、枚举等)

如果其命名不是充分自注释的,必须加以注释。对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释放在此域的右方。

 

Ø 示例:可按如下形式说明枚举/数据/联合结构。

 

[cpp]  view plain  copy
  1. /* sccp interface with sccp user primitive message name */  
  2. enum SCCP_USER_PRIMITIVE  
  3. {  
  4.     N_UNITDATA_IND, /* sccp notify sccp user unit data come */  
  5.     N_NOTICE_IND,   /* sccp notify user the No.7 network can not */  
  6.                     /* transmission this message */  
  7.     N_UNITDATA_REQ, /* sccp user's unit data transmission request*/  
  8. };  
 

4 全局变量的注释

Ø 包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。

 

示例:

[cpp]  view plain  copy
  1. /* The ErrorCode when SCCP translate */  
  2. /* Global Title failure, as follows */      // 变量作用、含义  
 

 

 

 

 

5 对代码的注释

注释总是加在程序的需要一个概括性说明或不易理解或易理解错的地方。注释语言应该简练、易懂而又含义准确,避免二义性;所采用的语种首选是中文,如有输入困难、编译环境限制或特殊需求也可采用英文。注释应与其描述的代码相近,对代码的注释统一放在其上方,避免在一行代码或表达式中间使用注释。上方注释与其上面的代码用空行隔开(较紧凑的代码除外)。

注意:注释应与所描述内容进行同样的缩进。


  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值