【问题标题】:Is there a way to define the order in which functions are listed in the module html page?有没有办法定义模块html页面中列出函数的顺序?
【发布时间】:2014-11-17 12:42:33
【问题描述】:

我在头文件 .h 文件中声明了几个函数,并在 .c 文件(C,而不是 C++)中实现。

在头文件中,我包含“@defgroup Gr1”,在.c 文件中,我包含“@addtogroup Gr1”,这使得两个文件的内容都属于组Gr1。

我观察到(我不知道是否总是这样),在 Doxygen 生成的 html Gr1 模块页面中,函数按照它们在 .c 文件中实现的顺序列出。我需要将它们按我定义的不同顺序列出(在这种情况下,将它们按 .h 文件声明顺序列出就足够了)。

所以,我有两个问题:

1.- 有什么方法可以定义函数列表顺序吗?

2.- 有没有办法让他们的上市顺序成为.h文件声明顺序?

(如果可能,我宁愿不编辑布局xml文件,因为我希望每次对代码进行一些更改时直接使用Doxygen生成的文档)。

【问题讨论】:

    标签: doxygen


    【解决方案1】:

    据我所知,在不更改源代码的情况下,您对列表顺序的唯一控制是在字母顺序和声明顺序之间切换。 (配置文件中的各种SORT_* 选项控制这一点。)

    如果您离开字母排序关闭,您可以通过将@addtogroup 移动到头文件中来生成遵循头文件中给出的顺序的文档。这不必非常具有侵入性:您可以使用花括号一次添加整个声明序列。

    /**
     * @addtogroup my_group
     * @{
     */
    
    ...declarations here...
    
    /** }@ */
    

    顺便说一句,您提到不想编辑layout.xml 文件,因为它会给您的工作流程添加额外的步骤。我很幸运地将修改后的布局放置在一个名为 DoxygenLayout.xml 的文件中,就在我的 Doxyfile 配置旁边; doxygen 会自动拾取并使用它。也就是说,我认为编辑布局文件不会对您有所帮助。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2013-07-03
      • 1970-01-01
      • 2011-03-24
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多