带有 Visual C++ 单元测试的 Doxygen
Doxygen with Visual C++ unit tests
我正在尝试用 doxygen 记录一些 VC++ 单元测试 classes。由于宏形成的 classes 和方法,doxygen 无法检测到 class 或方法声明,至少在默认情况下是这样。
有没有什么方法可以让 doxygen 有办法检测给定语言的非传统声明?如果没有,我能否以某种方式手动将链接引入 dox,以便我仍然可以交叉引用测试 classes/methods?
在 doxygen 配置文件中有一个名为 MACRO_EXPANSION 的标签。您可以尝试将其设置为 YES,这应该允许 doxygen 检测宏定义。
doxygen可以扩展宏,在doxygen配置中设置MACRO_EXPANSION
为YES
。然后 Doxygen 将展开所有宏。您还可以将 EXPAND_ONLY_PREDEF
设置为 YES
并传递 doxygen 应使用 PREDEFINED
或 EXPAND_AS_DEFINED
.
扩展的宏列表
根据我的经验,启用 MACRO_EXPANSION 不适用于 CppUnitTest 框架。但是,手动替换宏:
class YourClassName: public TestClass<YourClassName>
确实有效果。
我正在尝试用 doxygen 记录一些 VC++ 单元测试 classes。由于宏形成的 classes 和方法,doxygen 无法检测到 class 或方法声明,至少在默认情况下是这样。
有没有什么方法可以让 doxygen 有办法检测给定语言的非传统声明?如果没有,我能否以某种方式手动将链接引入 dox,以便我仍然可以交叉引用测试 classes/methods?
在 doxygen 配置文件中有一个名为 MACRO_EXPANSION 的标签。您可以尝试将其设置为 YES,这应该允许 doxygen 检测宏定义。
doxygen可以扩展宏,在doxygen配置中设置MACRO_EXPANSION
为YES
。然后 Doxygen 将展开所有宏。您还可以将 EXPAND_ONLY_PREDEF
设置为 YES
并传递 doxygen 应使用 PREDEFINED
或 EXPAND_AS_DEFINED
.
根据我的经验,启用 MACRO_EXPANSION 不适用于 CppUnitTest 框架。但是,手动替换宏:
class YourClassName: public TestClass<YourClassName>
确实有效果。