我如何找到具有复杂签名的事物的正确doxygen参考

How do I find correct doxygen reference to things with complicated signatures?

本文关键字:参考 doxygen 何找 复杂      更新时间:2023-10-16

我正在记录一些带有模板重载的函数,并希望引用特定的重载。但是我不知道如何准确键入签名以使ref命令理解;不幸的是,它需要一个规范版本,我不知道。有没有办法获取doxygen生成的规范签名列表?

我的具体情况是这样声明的函数:

template <typename T, size_t S>
int function(T value, Table const (&descriptors)[S]);

我试过了

ref function(T,Table(&)[])
ref function<>(T,Table(&)[])
ref function(T,const Table(&)[])
ref function<>(T,const Table(&)[])
ref function(T,Table const(&)[])
ref function<>(T,Table const(&)[])

我也尝试过没有ref(它应该会自动注意到符号),但这并没有更好。

或者有没有办法自己定义引用?

我也尝试在目标函数文档中定义锚点,但这指向描述正文而不是标题,因为对函数的引用应该。

doxygen 中的一个错误阻止了类型包含大括号的@ref参数。我刚刚向GitHub提交了一个可能的解决方案。让我知道这是否适合您。

我使用以下示例自己测试它:

/** @file */
/** complex function */
template <typename T, size_t S>
int function(T value, Table const (&descriptors)[S]);
/** @mainpage
 *  See @ref function(T,Table const (&)[S]) "complex function" for details.
 */