我有一个项目,我正在使用Doxygen来生成文档。类的文档已经很好了,但我还有一些非成员函数用来创建对象等。我也希望对它们进行文档化,但无论我尝试什么方法,Doxygen都不会从我放在函数上面的注释中生成文档。为什么Doxygen不会为全局命名空间中的函数生成文档,我需要做什么才能让它工作?
我有一个项目,我正在使用Doxygen来生成文档。类的文档已经很好了,但我还有一些非成员函数用来创建对象等。我也希望对它们进行文档化,但无论我尝试什么方法,Doxygen都不会从我放在函数上面的注释中生成文档。为什么Doxygen不会为全局命名空间中的函数生成文档,我需要做什么才能让它工作?
只有在其类有文档的情况下,作为类成员的实体才会被记录。只有在其命名空间有文档的情况下,声明在命名空间范围内的实体才会被记录。只有在其文件有文档的情况下,声明在文件范围内的实体才会被记录。
因此,在全局命名空间中记录自由函数,您还需要在其声明所在的头文件中添加像这样的一行:
/** @file */
或者像这样:
/*! \file */
在你的\\*!
*\
块中,将\class
替换为\fn
。
http://www.doxygen.nl/manual/docblocks.html 查找“其他位置的文档”
http://www.doxygen.nl/manual/commands.html#cmdfn
它的工作方式类似于记录成员函数。
这个模式对我们来说非常有效。
/*! Convert counts to kg for the reservoir.
\param counts The A/D counts to convert.`
\return The calculated kg based on the parameter.
*/
float RES_ConvertCountsToValue(uint_16 counts);
我喜欢这个模式
///////////////////////////////////////////////////////////////////////
/// \brief setX
/// \param x offset of the image.
/// \return a new image as an QImage.
/////////////////////////////////////////////////////////////////////////
QImage setX(int x);