如何在Doxygen中添加示例程序页面的标记?

时间:2017-03-11 16:51:21

标签: doxygen

我有一组Doxygen生成的库文档,包含示例程序。它们很好地出现在"例子"结果文档中的选项卡。我想在这些页面中添加一些Doxygen类型的标记,但无法弄清楚如何做到这一点。所有标记注释都被删除,并且不会显示在Doxygen输出中的任何位置。我希望包括一些描述性的段落,也许还有一组用户可以看到的程序输出。我暂时的解决方法是在源代码中包含所有这些权限,作为非Doxygen注释。这种方法有效,但它不是我所希望的。

/** 
 *  \brief ATTEMPTED DESCRIPTION
 *
 *  I would like to include some kind of markup on the example page for 
 *  this program.  I link to it just fine from one of my library routines,
 *  the the Doxygen-generated example page just shows all of this verbatim.
 *
 *  Is there any way to provide some kind of section where I can discuss
 *  the example program itself?  And potentially provide sample output
 *  and the like?  (I realize that doesn't make sense for "Hello World",
 *  but you get the idea.)
 */

#include <iostream>

int main ( int argc, char *argv[] )
{
    std::cout << "Hello World" << std::endl ;

    return 0 ;
}

1 个答案:

答案 0 :(得分:0)

在上个月探讨这个问题后, 我已经确定你无法有效改变doxygen的输出 在示例程序文件中使用标记。

解决方案是在文档中构建一个单独的页面, 包含带有\include指令的示例代码,然后 手动提供指向此新示例页面的链接。例如 上面,创建一个具有以下格式的文件并使用 \include指令,用于添加示例中的实际代码 程序。然后简单地添加一个叙述和一个部分 节目输出。

在此示例中,使用以下结构创建文件example-hello-world.dox

/*! \page  ex-page Example Program Page
 *
 *  \brief Example code for the "hello world" program.
 *
 *  \section ex-sec-description Program Details
 *
 *  In order to display the string "Hello World" to the standard output
 *  stream, the user should use the `std::cout` stream provided by C++.
 *
 *  \include example_hello_world.cpp
 *
 *  \section ex-sec-output Program Output
 *
 *  The program above will generate the following output when executed.
 *
 *            Hello World
 */