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. 使用rem设计移动端自适应页面一(转载)

    1.困扰多时的问题 在这之前做Web App开发的的时候,在自适应方面一般都是宽度通过百分比,高度以iPhone6跟iPhone5之间的一个平衡值写死,我们的设计稿都是iPhone5的640 * 11 ...

  2. 如何防范CC攻击

    服务器如何防范CC攻击CC攻击是DDOS(分布式拒绝服务)的一种,相比其它的DDOS攻击CC似乎更有技术含量一些.这种攻击你见不到虚假IP,见不到特别大的异常流量,但造成服务器无法进行正常连接,听说一 ...

  3. 反射导出excel案例

    1.代码案例: protected void btnExportExcel_Click(object sender, EventArgs e) { SetSearchValue(); Dictiona ...

  4. HAProxy+apache实现web服务动静分离

    HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支持虚拟主机,它是免费.快速并且可靠的一种解决方案. HAProxy提供高可用性.负载均衡以及基于TCP和HTTP应用的代理,支 ...

  5. SignalR1

    SignalR循序渐进(一) 前阵子把玩了一下SignalR,起初以为只是个real-time的web通讯组件.研究了几天后发现,这玩意简直屌炸天,它完全就是个.net的双向异步通讯框架,用它能做很多 ...

  6. 使用TotoriseSVN的分支/标签功能

    使用TotoriseSVN的分支/标签功能 http://blog.sina.com.cn/s/blog_5383588c0100o1oo.html 原来在新建一个项目文件夹后,再把Trunk.Bra ...

  7. vijos1009:扩展欧几里得算法

    1009:数论 扩展欧几里得算法 其实自己对扩展欧几里得算法一直很不熟悉...应该是因为之前不太理解的缘故吧这次再次思考,回看了某位大神的推导以及某位大神的模板应该算是有所领悟了 首先根据题意:L1= ...

  8. Jquery EasyUI中treegrid

    Jquery EasyUI中treegrid的中右键菜单和一般按钮同时绑定事件时的怪异事件 InChatter系统开源聊天模块前奏曲   最近在研究WCF,又因为工作中的项目需要,要为现有的系统增加一 ...

  9. WordPress搭建Personal Blog【转】

    早就想搭建一个专属于自己的博客了,用来记录自己生活.学习的点点滴滴.之所以选WordPress,主要是因为它可以支持Latex,而且特别喜欢其简约的风格. WordPress有个the famous ...

  10. IOS学习之路五(SpriteKit 开发飞机大战小游戏一)

    参考SpriteKit 创建游戏的教程今天自己动手做了一下,现在记录一下自己怎么做的,今天之做了第一步,一共有三个部分. 第一步,项目搭建. 项目所用图片资源:点击打开链接 1.在Xcode打开之后, ...