doxygen C ++内联模板文档

时间:2010-05-30 17:22:30

标签: c++ templates documentation doxygen

有没有办法记录这样的模板参数:

template<
    int N, ///< description
    typename T ///< description
>

而不是使用tparam列出每个参数?

请注意,函数参数可以在当前的doxygen中记录如​​下:

void function(int a /**< description */);

如果没有,实施它会有多难? 如果你熟悉doxygen内部,你能指出我实施它的方向。

谢谢

1 个答案:

答案 0 :(得分:6)

无法像您描述的那样记录模板参数。

我想说这不是一个好主意,因为那样你会以不同于常用参数的方式记录模板参数,为什么要这样?

通常看起来像这样:

/*! \p transpose : transpose a matrix
 *
 * \param A input matrix
 * \param At output matrix (transpose of A)
 *
 * \tparam MatrixType1 matrix
 * \tparam MatrixType2 matrix
 */

template <typename MatrixType1, typename MatrixType2>
void transpose(const MatrixType1& A, MatrixType2& At);

你希望它看起来像这样吗?!

/*! \p transpose : transpose a matrix
 *
 * \param A input matrix
 * \param At output matrix (transpose of A)
 *
 */

template <
  typename MatrixType1, ///< matrix
  typename MatrixType2  ///< matrix
>
void transpose(const MatrixType1& A, MatrixType2& At);

为什么?