通过\ see命令引用转换运算符

时间:2012-06-21 15:00:11

标签: c++ doxygen

我在从源中的另一个点引用转换运算符时遇到了麻烦,这是一个最小的例子:

#include <string>

/*!
  Dummy struct
 */
struct A
{
    /*!
      Dummy operator.
     */
    void operator()() const {}

    /*!
      Dummy conversion operator.

      \return Nothing, really.
     */
    operator std::string() const { return std::string(); }
};

/*!
  Dummy function.

  \see A::operator()()
  \see A::operator std::string()
 */
void b()
{
    // Here I use A::operator() and A::operator std::string
    // so it would be nice to reference them in the docs.
}

\see函数中的第一个b()命令有效,结果是指向A的链接 HTML输出中的运算符,但第二个不是。

如何引用转换运算符?

1 个答案:

答案 0 :(得分:1)

这似乎有效,带有“无用的”typedef,因此doxygen将string识别为A::string

/*!
  Dummy struct
 */
struct A
{
    typedef std::string string;

    /*!
      Dummy conversion operator.

      \return Nothing, really.
     */
    operator string() const { return std::string(); }
};

/*!
  Dummy function.

  \see A::operator string()
 */
void b();