Doxygen无法解析模板化的返回类型

时间:2011-04-13 17:46:50

标签: c++ return doxygen

我目前正在使用Doxygen记录我的代码。看起来好像Doxygen无法处理模板化的返回值。我的问题:

/** 
 *  Retrieves all edges from the graph.
 *  @param gID The ID of the graph.
 *  @return A list containing pairs of vertices, denoting the edges in the graph.
 */
 int GetEdges(const int& gID); // Works fine

/** 
 *  Retrieves all edges from the graph.
 *  @param gID The ID of the graph.
 *  @return A list containing pairs of vertices, denoting the edges in the graph.
 */
 list<pair<int,int>> GetEdges(const int& gID); // PROBLEM

第二个功能没有记录。更糟; Doxygen现在跳过它下面的所有功能。以某种方式,doxygen似乎无法处理list<pair<int,int>>返回值。

有人知道为什么以及如何改变这个?提前谢谢。

1 个答案:

答案 0 :(得分:3)

也许Doxygen不支持声明模板的新方法?较旧的C ++标准(我认为是C ++ 03),仅允许list<pair<int,int> >。在末尾的两个>符号之间应该有一个空格,否则编译器会将它们解释为>>(右移)运算符。

一些较新的编译器会重新定义这种语法,它是即将推出的C ++ 0x标准的一部分,但也许doxygen还没有识别它。