原文:http://blog.csdn.net/pleasecallmewhy/article/details/8658795

1 源文件头部注释

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

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

示例:

  1. /*************************************************
  2. Copyright:Call_Me_Why
  3. Author:why
  4. Date:2010-08-25
  5. Description:Something about C++
  6. **************************************************/

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

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

3 数据结构声明的注释(包括数组、结构、类、枚举等)
如果其命名不是充分自注释的,必须加以注释。对数据结构的注释应放在其上方相邻位置,不可放在下面;对结构中的每个域的注释放在此域的右方。

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

  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 全局变量的注释
包括对其功能、取值范围、哪些函数或过程存取它以及存取时注意事项等的说明。

示例:

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

5 对代码的注释

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

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

[C++]项目中的代码注释规范(整理)的更多相关文章

  1. vs2008 多人同时开发项目时的代码注释规范格式 分类: C#小技巧 2014-04-23 14:12 297人阅读 评论(0) 收藏

    多人同时开发一个项目,区分项目的那个窗体是谁开发的,例:下面的格式 /************************************************       模块:服务器设置   ...

  2. java代码注释规范

    java代码注释规范   代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率.也是程序代码可维护性的重要环节之一.所以我们不是为写注释而写注释.下面说一下我们在诉求网二 ...

  3. [转]java代码注释规范

    代码注释是架起程序设计者与程序阅读者之间的通信桥梁,最大限度的提高团队开发合作效率.也是程序代码可维护性的重要环节之一.所以我们不是为写注释而写注释.下面说一下我们在诉求网二期开发中使用的代码注释规范 ...

  4. .NET代码编写规范 整理

    .NET代码编写规范 整理 .NET代码编写规范 - [ASP.NET] 2009-02-26 | Tag: 版权声明:转载时请以超链接形式标明文章原始出处和作者信息及本声明 http://lensp ...

  5. PHPDocument 代码注释规范总结

    PHPDocument 代码注释规范 1. 安装phpDocumentor(不推荐命令行安装)在http://manual.phpdoc.org/下载最新版本的PhpDoc放在web服务器目录下使得通 ...

  6. Roslyn 入门:使用 Roslyn 静态分析现有项目中的代码

    Roslyn 是微软为 C# 设计的一套分析器,它具有很强的扩展性.以至于我们只需要编写很少量的代码便能够分析我们的项目文件. 作为 Roslyn 入门篇文章,你将可以通过本文学习如何开始编写一个 R ...

  7. Java注释规范整理

    Version:0.9 StartHTML:-1 EndHTML:-1 StartFragment:00000099 EndFragment:00018736 在软件开发的过程中总是强调注释的规范,但 ...

  8. 从开源项目看python代码注释

    最近看了不少代码,也写了不少代码,所以在看和写之间发现了很多的问题,真的是很多,至少从我的认识来看,有几个地方有很大的改进空间,这里不准备把所有的问题都列举出来,所以就先挑选一个比较明显得来和大家聊聊 ...

  9. Eclipse中java代码注释变成乱码的问题

    今天在查看曾经写过的代码时发生了一件很是让人头疼的事: 我写的所有注释全部都变成了了乱码,曾经刚入门时也是经常遇到类似的问题,解决起来很快,每天可能都会在工作空间里看到,但是随着时间的推移,写代码的规 ...

随机推荐

  1. oracle10g配置小记

    因对接HIS系统,对方提供了视图.故此我拿起多年不用的ORACLE. 初始安装一切正常,然后打开Net Configuration Assistant配置监听程序. 接着配置 本地NET服务名配置 打 ...

  2. Appium在没有收到下一个命令时,默认超时时间是60s,超时后应用将会自动关闭,如果有需要等待超过60s的场景,怎么处理?

    DesiredCapabilities capabilities = new DesiredCapabilities(); capabilities.setCapability("newCo ...

  3. MFC之动态创建按钮

    打开VS 创建MFC基于对话框的工程,在对话框初始化方法中动态创建一个按钮实例: 1> CButton *pMyButton = new CButton();CEdit *pMyEdit = n ...

  4. lua中的协程

    lua中的协程和线程类似: 1. 协程拥有自己的独立的栈,局部变量,和指令: 2. 所有协程都可以共享全局变量: 3. 协程不能像线程那样并行执行,协程之间需要相互协调执行,同一个时刻只能运行一个协程 ...

  5. iMac 重装系统

    iMac重装系统相当简单.开机的时候按下option键选择恢复系统或者在开机前按下 command+R然后按开机键松开同样会进入系统选择界面: 当中有 4 个选项:Restore From Time ...

  6. delphi ftBlob二进制字段读取存储

    aStream:TMemoryStream; 保存到字段 qrypub.ParamByName('Data').LoadFromStream(aStream, ftBlob); 从字段读取到mem里 ...

  7. Hadoop HDFS编程 API入门系列之HdfsUtil版本2(七)

    不多说,直接上代码. 代码 package zhouls.bigdata.myWholeHadoop.HDFS.hdfs1; import java.io.FileInputStream;import ...

  8. PHP的轻量消息队列php-resque使用说明

    日志未经声明,均为AlloVince原创.版权采用『 知识共享署名-非商业性使用 2.5 许可协议』进行许可. 消息队列处理后台任务带来的问题 项目中经常会有后台运行任务的需求,比如发送邮件时,因为要 ...

  9. 抽象数据类型ADT

    ADT(Abstract Data Type) 类型由什么组成? 一个类型(type)指定两类信息,一个属性集和一个操作集. 假设要定义一个新的数据类型.首先,要提供存储数据的方式,可能是通过设计一个 ...

  10. poj1741 树上的点分治

    题意: 一棵10000个点的树,每条边的长不超过1000,给定一个值k,问距离不超过k的点对数有多少.(多组数据) 输入样例: 5 4 1 2 3 1 3 1 1 4 2 3 5 1 0 0输出样例: ...