我想仅为具有doxygen注释的代码生成文档.我已经通过doxygen v.1.8.9.1创建了一个Doxyfile,并将其配置为仅输出xml并隐藏所有未记录的代码:
GENERATE_HTML = NO GENERATE_LATEX = NO GENERATE_XML = YES HIDE_UNDOC_MEMBERS = YES HIDE_UNDOC_CLASSES = YES
之后我创建了一个简单的c头test.h,其中包含一个记录的和一个未记录的函数声明:
void foo(int a); /** * "bar" function description * @param b sample param */ void bar(int b);
通过执行doxygen,我预计只有条形文档才能包含在结果xml中.不幸的是,生成了两个函数的文档.是否可以仅为具有doxygen注释的代码生成文档,或者对于xml输出,doxygen将始终包含所有内容而不管建立什么?
在进一步阅读之前,请确保EXTRACT_ALL设置为NO.
原文链接:https://www.f2er.com/xml/292408.html我不是以下解决方案的粉丝,但确实有效.使用doxygens预处理器
#ifdef PROJECT_NO_DOC void foo(int a); #endif /* PROJECT_NO_DOC */ /** * * "bar" function description * * @param b sample param * */ void bar(int b);
注意,在他们的文档中你必须设置一个PREDEFINED宏,但至少在我的doxygen版本中,这不是必需的.他们的文档指定这样做set a predefined macro in the config to do it for you
#ifndef DOXYGEN_SHOULD_SKIP_THIS /* code that must be skipped by Doxygen */ #endif /* DOXYGEN_SHOULD_SKIP_THIS */
围绕应隐藏和放置的块:
PREDEFINED = DOXYGEN_SHOULD_SKIP_THIS
在配置文件中,只要Doxygen跳过所有块
ENABLE_PREPROCESSING = YES
还有其他方法,但它们带有额外的约束,即确保您的公共文档中不会出现静态方法,您可以将EXTRACT_STATIC设置为NO.