【问题标题】:Doxygen private functionDoxygen 私有函数
【发布时间】:2012-08-22 06:38:35
【问题描述】:

有没有办法让 doxygen 显示各个私有函数的文档?我希望 doxygen 不显示绝大多数私有函数的文档,而是显示少数私有函数的文档。我的动机是这些 C++ 私有函数作为扩展提供给 Python,我希望它们的文档出现在 Doxygen 中。但是,我不希望它们公开,因为它们只是类本身需要的;他们肯定属于私营部门。

谢谢

【问题讨论】:

  • 这不能回答我的问题。这决定了如何启用或禁用所有私有功能,这不是我想做的。我希望有某种条件。我尝试关闭私人文档并启用内部文档,但没有奏效。
  • 查看我对条件句的回答。每个班级只需要进行几次编辑。
  • nudge你有没有得到任何地方?

标签: c++ doxygen


【解决方案1】:

我在配置文件中设置了以下内容:

EXTRACT_PRIVATE = YES

HIDE_UNDOC_MEMBERS = YES

这具有预期的效果,但仍会显示所有记录的私人成员的文档。

然后我使用@internal 作为我不想显示的私人成员文档的第一行。

另外,我仍然可以使用普通的 C++ 注释来记录私有成员。 IE。不要使用/** ... */ 使用/* ... */。 通常我对成员变量使用普通注释。

最后,如果我真的想展示我可以设置的所有私人文档:

INTERNAL_DOCS = YES

创建更广泛的文档版本。

【讨论】:

    【解决方案2】:

    \cond 和 \endcond 命令之间的部分可以通过将其部分标签添加到 ENABLED_SECTIONS 配置选项来包含。如果节标签被省略,节将被无条件地排除在处理之外。

    /** An interface */
    class Intf
    {
      public:
        /** A method */
        virtual void func() = 0;
    
        /// @cond COND1
    
        /** A method used for testing */
        virtual void test() = 0;
    
        /// @endcond
    };
    

    见cond help

    看不到 COND1 部分:只是不要将其添加到 ENABLED_SECTIONS 配置选项中。

    【讨论】:

    • 对于私有字段,这仅在启用 EXTRACT_PRIVATE 时有效。
    【解决方案3】:

    有几种方法可以实现这一点。

    你不能简单地记录那些你不想看到的功能。默认情况下,Doxygen 不会显示您没有记录的任何成员。因此,您只需告诉它显示私人信息,任何未记录的私人成员都不会显示。

    【讨论】:

    • 这肯定是可行的,但是许多私有函数已经有 doxygen 文档,我不打算对它们进行 de-doxygen。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-03-08
    • 1970-01-01
    • 2023-03-07
    • 1970-01-01
    • 2020-03-22
    • 2021-07-23
    • 1970-01-01
    相关资源
    最近更新 更多