Doxygen注释使用中应该注意的问题.docVIP

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  4. 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  5. 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  6. 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  7. 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
Doxygen注释使用中应该注意的问题

1. 没有内容的注释 1 2. 位于代码右侧的注释 1 3. 一组函数,#define的注释 1 4. 多行注释的分行问题 2 5. 隐藏私有与保护方法与属性 2 6. 隐藏其他内容 2 Doxygen注释使用中应该注意的问题 1. 没有内容的注释 /** * @file DataProxy.h * @brief core数据代理适配层 * @sa 参考对象 * @author zhangzewu * @date 19/11/2012 * 详细描述 */ 问题:因为没有内容,上例标红的注释应该删除。 位于代码右侧的注释 BOOL TagUnderLine(std::string str, const char* pszText, bool bFlag);///下划线 问题:上例中标红的注释应为///下划线,否则会被当做下面代码的注释。 一组函数,#define的注释 ///参数类型,与value的类型相对应 #define DVTS_int \x01 #define DVTS_float \x02 #define DVTS_string \x03 #define DVTS_indicator \x04 #define DVTS_matrix \x05 #define DVTS_dzhobj \x06 问题:上例中的注释是对这组#define的注释,但在Doxygen生成的文档中只会出现在第一个#define下面,其他#define都会没有注释。应将这组#define分组,然后将注释放在组名的下面。 /**@name #define-1(组名) * 参数类型,与value的类型相对应(整个组的注释) */ //@{ #define DVTS_int \x01 #define DVTS_float \x02 #define DVTS_string \x03 #define DVTS_indicator \x04 #define DVTS_matrix \x05 #define DVTS_dzhobj \x06 //@} 多行注释的分行问题 ///包信息 ///第0、1位表示事务的状态信息:1-开始; 2-持续中; 3-结束 ///第2位表示消息是同步还是异步: 0-同步; 1-异步 ///第3位表示消息是函数还是命令: 0-函数; 1-命令 ///第4位表示消息是否执行成功: 0-执行成功; 1-执行失败。仅仅在返回值是有效 问题:上例的注释在生成的文档中会一行显示,不易理解,应用BR将注释分行: /** 包信息 * BR第0、1位表示事务的状态信息:1-开始; 2-持续中; 3-结束 * BR第2位表示消息是同步还是异步: 0-同步; 1-异步 * BR第3位表示消息是函数还是命令: 0-函数; 1-命令 * 第4位表示消息是否执行成功: 0-执行成功; 1-执行失败。仅仅在返回值是有效 */ 5. 隐藏私有与保护方法与属性 不在生成文档中显示私有方法与属性,只要在Expert-Build里面勾选EXTRACT_ALL,并不勾选EXTRACT_PRIVATE. 不在生成文档中显示保护方法与属性,需要在不显示私有方法与属性的基础上,在所有“protected:”关键字后加上@privatesection命令: protected: /**@privatesection */ 6. 隐藏其他内容 需要隐藏其他内容,可以在要隐藏的内容前后加上@cond与@endcond命令,如: ///@cond typedef struct { size_t start; int step; /// 可以0 size_t end; /// 值的个数 inline size_t Count() const { return int(end-start)/step + 1; } /// 位置计算,错误返回0xffffffff inline size_t Index(size_t v) const { return (v-start)%step==0 ? (v-start)/step : 0xffffffff; } } Range; ///@endcond

文档评论(0)

ytucd96 + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档