考虑:
struct S {
... // Some data members
double x, y; ///< Coordinates
... // More data members
}
我打算x
和y
的评论由doxygfen
解释为仅指y
(或者,至少在结果中没有显示它引用两者的文档)。我可以通过两种方式解决这个问题:
复制评论。但是,这需要在单独的行上声明x
和y
,这些行不太可读,因为这些成员在逻辑上是相关的。
创建一个组。但是,在这种情况下,x
和y
将出现在文档中的所有其他数据成员之后,如果数据成员出现的特定顺序存在逻辑,这可能是不合需要的。
有没有办法评论在一行上声明的成员不具备上述方法的弱点?
答案 0 :(得分:1)
Imho一般来说,每行声明一个变量是一种好习惯。这避免了一些关于例如
int* x,y;
等等。我真的不明白你对可读性较差的关注,因为这些成员在逻辑上是相关的&#34;。它们包含在同一个结构中,因为它们在逻辑上是相关的。如果你想要更清楚,那就做一个
struct XY {
double x;
double y;
}
我知道这并没有真正回答你的问题,但是当我在寻找它时,我没有找到doxygen的方法来为一行上声明的2个(或更多)变量提供注释。而且我没有看到你提到的第一种方法的弱点,因为无论如何它使代码更具可读性。
答案 1 :(得分:1)
您问题的正确答案是:将坐标封装成一种类型,例如:
struct Point
{
double x;
double y;
};
然后问题消失:
struct S {
... // Some data members
Point coordinates; ///< Coordinates
... // More data members
};
可能在更改之后,评论不再那么必要......
答案 2 :(得分:1)
我认为没有什么问题;
struct Point
{
double x; ///< x & y are coordinates. (more detailed description)
double y; ///< See "x".
};
答案 3 :(得分:0)
在doxygen中,可以复制项目 SELECT id,title,description, dates
FROM post_feed where CAST(`dates`as date) BETWEEN CURDATE() AND CURDATE() - INTERVAL 1 DAY
ORDER BY dates DESC LIMIT 100
的文档,也可以\copy...
\ref
链接到其他文档。
有了\link ... \endlink
,我们可以到达这里:
\copydoc