Qdoc 注释

Qdoc注释有一些命令, 能够对文档进行组织。

QDoc能识别以下3种类型的命令

主题(topic command)

主题命令确定了文档的元素,例如C++类(class),函数(function),类型(type),或者和所有元素无关的一段文字。

上下文(context command)

上下文命令向QDoc说明了qdoc文件中某个元素和另外的元素怎么样联系,例如前后页链接,同一主题的页组,或者其它链接库,上下文命令还能够获取元素的那些在源代码文件中无法获取到的信息,例如,该元素是否线程安全,是否是一个重载或者覆写函数,是否已被废除,属于哪个module等

标记(Makeup command)

标记命令告诉QDoc文档中的文字和图片如何渲染,以及文档的大纲结构。

主题(topic command)

一个主题命令向QDoc指明源代码中哪一个语法元素要被归档,还有一些主题命令允许您创建没有绑定到任何源代码语法元素的文档页面。当QDoc遍历QDoc注释时,它试图通过首先寻找到一个主题命令来把源代码元素连接到这个注释上。如果没有主题命令, QDoc会连接紧跟在该注释之后的源代码元素。如果不满足上述条件,并且注释中没有其它元素来说明这段注释与源代码无关, 那么该段注释就会被丢弃。

相关的语法元素的名字通常是主题命令唯一的参数字段, 这里要使用完整的名称。有时可以有第二个参数。例如 \page。

\fn 也是一个特例, 它需要加上完整的函数信息, 因此它可能会有多个字段, 但是是一个参数。如果注释中没有 主题命令,qdoc会把这段注释与紧跟其后的代码 联系起来。

主题命令可以出现在注释中的任何位置,但必须独立一行。把主题命令放在第一行是一种很好的做法。如果参数字段跨越几行,确保每一行(除了最后一个)使用一个反斜杠结束。此外,QDoc计数括号,这意味着如果它遇到一个“(“,它会把”)”之前的所有内容作为其参数。

几个主题命令(详见qdoc)

\class 会生成一个以参数名的小写为文件名的独立html页面

\externalpage 给一个url定义别名,这样在其它地方可以使用 \l 去引用

Miscellaneous:

提供一些作用于文档生成和渲染的一些命令。

\group 用于生成一个列举了所有类的独立的页面,这些类有 \ingroup 元素。

Relating Things:

\headerfile 用于生成一个包含了一个头文件中的全局函数、类型、宏等的页面

\relates 用于把一个全局的元素包含到一个头文件或者类中。 例如, 声明了 \class QChar , 再声明 \relates AElem, 就会在QChar 页面中看到AElem

\overload 说明函数是重载函数, 参数是重载的函数

\reimp 用于说明一个函数覆写了虚函数。

qdoc 写法的更多相关文章

  1. obj.style.z-index的正确写法

    obj.style.z-index的正确写法 今天发现obj.style.z-index在js里面报错,后来才知道在js里应该把含"-"的字符写成驼峰式,例如obj.style.z ...

  2. java设计模式之单例模式(几种写法及比较)

    概念: Java中单例模式是一种常见的设计模式,单例模式的写法有好几种,这里主要介绍三种:懒汉式单例.饿汉式单例.登记式单例. 单例模式有以下特点: 1.单例类只能有一个实例. 2.单例类必须自己创建 ...

  3. .NET跨平台之旅:数据库连接字符串写法引发的问题

    最近在一个ASP.NET Core站点中遇到一个奇怪问题.当用dotnet run命令启动站点后,开始的一段时间请求执行速度超慢,有时要超过20秒,有时甚至超过1分钟,日志中会记录这样的错误: Sys ...

  4. 【兼容写法】HttpServerUtility.Execute 在等待异步操作完成时被阻止。关键词:MVC,分部视图,异步

    异常处理汇总-后端系列 http://www.cnblogs.com/dunitian/p/4523006.html MVC6之前的版本,对分部视图的异步支持不是很好 问题: 视图里面有分布视图:@{ ...

  5. 常用原生JS方法总结(兼容性写法)

    经常会用到原生JS来写前端...但是原生JS的一些方法在适应各个浏览器的时候写法有的也不怎么一样的... 今天下班有点累... 就来总结一下简单的东西吧…… 备注:一下的方法都是包裹在一个EventU ...

  6. touchstart,touchmove,touchend事件 写法

    jQuery写法: $('#id').on('touchstart',function(e) { var _touch = e.originalEvent.targetTouches[0]; var ...

  7. 前端导出Excel兼容写法

    今天整理出在Web前端导出Excel的写法,写了一个工具类,对各个浏览器进行了兼容. 首先,导出的数据来源可能有两种: 1. 页面的HTML内容(一般是table) 2. 纯数据 PS:不同的数据源, ...

  8. Express 4 handlebars 不使用layout写法

    Express 4 handlebars 不使用layout写法 Express node nodejs handlebars layout 最近刚开始学习使用nodejs. 使用express搭建了 ...

  9. javascript函数的几种写法集合

    1.常规写法 function fnName(){ console.log("常规写法"); } 2.匿名函数,函数保存到变量里 var myfn = function(){ co ...

随机推荐

  1. 18. Scrum敏捷软件开发

      1)柯维定律 2)如何组件敏捷团队? 团队5~9个人,Mike带过最多的是14个人.个人建议,别超过10个.否则沟通的成本直线上升.(团队的午餐,两个匹萨就够了). 引入特性团队(针对于传统的组件 ...

  2. 最佳新秀Java(22)——再次了解泛型

    仿制药Java SE 1.5新功能.通用自然是参数化类型.即操作数据类型被指定为一个参数.这样的参数类型可以在课堂上使用.创建的接口和方法,他们被称为通用类..泛型方法. Java语言引入泛型的优点是 ...

  3. Windows下MYSQL自动备份批处理

    windows下MYSQL自动备份批处理 2011-05-04 09:16:45|  分类: mysql|举报|字号 订阅     按系统时间进行备份 注意mysql安装路径中如果有空格.就要把,.b ...

  4. WCF、Web API、WCF REST、Web Service

    WCF.Web API.WCF REST.Web Service 区别 Web Service It is based on SOAP and return data in XML form. It ...

  5. python包

    有个伟人说过: python的学习很大一部分取决与你对第三方包的熟悉和掌握程度! virtualenv virtualenv用于创建独立的Python环境,多个Python相互独立,互不影响,它能够: ...

  6. Intellij Idea/Webstorm/Phpstorm

    Intellij Idea/Webstorm/Phpstorm 的高效快捷键   1. shift + F6可以理解为F2的豪华重量版,不但可以重命名文件名,而且可以命名函数名,函数名可以搜索引用的文 ...

  7. memcached内存分配及回收初探

    对memcached(后面简称mc) 的内存分配及回收机制进行了深度分析和测试,以下是一些学习的心得,和大家共同探讨一下,期望能抛砖引玉 mc简介: mc是由LiveJournal技术团队开发的一套分 ...

  8. 使用LFM(Latent factor model)隐语义模型进行Top-N推荐

    最近在拜读项亮博士的<推荐系统实践>,系统的学习一下推荐系统的相关知识.今天学习了其中的隐语义模型在Top-N推荐中的应用,在此做一个总结. 隐语义模型LFM和LSI,LDA,Topic ...

  9. discuz 门户功能增加自定义keywords字段

    discuz的门户的“发布文章”功能中,没有自动添加keywords字段,结果在文章页面中的meta的keywords中只显示标题,这样对于seo及其不利,今天整理了添加keywords字段方法. 一 ...

  10. 圆形头像以及一些常见需求形状自定义ImageView组件

    在实际开发中,我们经常会遇到这样的需求,就是无论图片长啥样,我们都要其显示成圆形.圆形加一个边框.矩形加边框,带圆角的矩形等等,lib和demo下载地址:https://github.com/mapl ...