副标题#e#
三、注释类型:
1、函数头的注释
对付函数,应该从“成果”,“参数”,“返回值”、“主要思路”、“挪用要领”、“日期”六个方面用如下名目注释:
//措施说明开始
//================================================================//
// 成果: 从一个String 中删除另一个String。
// 参数: strByDelete,strToDelete
// (进口) strByDelete: 被删除的字符串(本来的字符串)
// (出口) strToDelete: 要从上个字符串中删除的字符串。
// 返回: 找到并删除返回1,不然返回0。(对返回值有错误编码的要// 求列堕落误编码)。
// 主要思路:本算法主要回收轮回较量的要领来从strByDelete中找到
// 与strToDelete相匹配的字符串,对多匹配strByDelete
// 中有多个strToDelete子串)的环境没有处理惩罚。请参阅:
// 书名……
// 挪用要领:……
// 日期:起始日期,如:2000/8/21.9:40–2000/8/23.21:45
//================================================================//
函数名(……)
//措施说明竣事
①、对付某些函数,其部门参数为传入值,而部门参数为传出值,所以对参数要具体说明该参数是进口参数,照旧出口参数,对付某些意义不明晰的参数还要做具体说明(譬喻:以角度作为参数时,要说明该角度参数是以弧度(PI),照旧以度为单元),对既是进口又是出口的变量应该在进口和出口处同时标明。等等。
②、函数的注释应该安排在函数的头文件中,在实现文件中的该函数的实现部门应该同时安排该注释。
③、在注释中应该具体说明函数的主要实现思路、出格要注明本身的一些想法,假如有须要则应该写明对想法发生的理由。对一些仿照的函数应该注释上函数的出处。
④、在注释中具体注明函数的适当挪用要领,对付返回值的处理惩罚要领等。在注释中要强调挪用时的危险方面,大概堕落的处所。
⑤、对日期的注释要求记录从开始写函数到竣事函数的测试之间的日期。
⑥、对函数注释开始到函数定名之间应该有一组用来标识的非凡字符串。
假如算法较量巨大,或算法中的变量界说与位置有关,则要求对变量的界说举办图解。对难以领略的算法能图解只管图解。
2、变量的注释:
对付变量的注释紧跟在变量的后头说明变量的浸染。原则上对付每个变量应该注释,但对付意义很是明明的变量,如:i,j等轮回变量可以不注释。
譬喻: long lLineCount //线的根数。
#p#副标题#e#
3、文件的注释:
文件应该在文件开头插手以下注释:
/////////////////////////////////////////////////////////////////////
// 工程: 文件地址的项目名。
// 作者:**,修改者:**
// 描写:说明文件的成果。
// 主要函数:…………
// 版本: 说明文件的版本,完成日期。
// 修改: 说明对文件的修改内容、修改原因以及修他日期。
// 参考文献: ……
/////////////////////////////////////////////////////////////////////
为了头文件被反复包括要求仇家文件举办界说如下:
#ifndef __FILENAME_H__
#define __FILENAME_H__
个中FILENAME为头文件的名字。
4、其他注释:
在函数内我们不需要注释每一行语句。但必需在各成果模块的每一主要部门之前添加块注释,注释每一组语句,在轮回、流程的各分支等,尽大概多加以注释。
个中的轮回、条件、选择等位置必需注释。
对付前后顺序不能颠倒的环境,发起在注释中增加序号。
譬喻:
......
//1、......注释
for (......)
{
}
if(......)
{//......注释
}
else
{//......注释
}
//......注释
switch(......)
{
case: ......// ......注释
......
case: ......// ......注释
......
default: //......注释
......
}
在其他顺序执行的措施中,每隔3-5行语句,必需加一个注释,注明这一段语句所构成的小模块的浸染。对付本身的一些较量奇特的思想要求在注释中标明。