我看到大多数Doxygen文档用于评论c ++函数,看起来类似于
/// a description of the function or method followed with comments, like so
/// @return true=success, false=error
/// @param[in] bar blah blah
/// @param[out] baz blah blah
/// @param[out] quux blah blah
/// @param[out] quuux blah blah
/// @param[out] quuuux blah blah
static bool foo_one( int *bar, int *baz, int *quux, int *quuux, int *quuuux );
或xml等价物(粗略地)
/// a description of the function or method, followed by
/// <returns>true=success, false=error</returns>
/// <param name=bar>blah blah</param>
/// <param name=baz>blah blah</param>
/// <param name=quux>blah blah</param>
/// <param name=quuux>blah blah</param>
/// <param name=quuuux>blah blah</param>
static bool foo_two( int *bar, int *baz, int *quux, int *quuux, int *quuuux );
但我一直在主要评论我的参数内联,如此
/// a description of the function or method, followed by
/// @return true=success, false=error
static bool foo_three(
int *bar, ///< [in] blah blah
int *baz, ///< [out] blah blah
int *quux, ///< [out] blah blah
int *quuux, ///< [out] blah blah
int *quuuux ///< [out] blah blah
);
所有这三个都在html文件中提供相同的输出(中间的输出除外,它没有指定输入/输出)。
我的问题:是否有Doxygen,Visual Studio或其他任何我无法使用内联方法使用的环境的功能?我理解在编写和阅读代码本身的评论时有个人偏好,并且不愿讨论那些。我只是想知道是否有Doxygen或其他环境功能或格式,我将会错过。
答案 0 :(得分:3)
是
Doxygen本身可以正常使用内联注释。
但是,还要考虑源代码控制系统记录的对历史的影响(例如,git
和git blame
)
使用内联注释,更改该行的最后一个人是添加或更改文档的人,这使得更难以找到代码本身的更改时间/原因。
对单独的行进行注释,尤其是在代码之后添加文档时,检查历史记录以查找代码更改会更容易。