Doyxgen一次性宏扩展/扩展命令
Doyxgen onetime macro expansion / expansion command
我有一些代码,如下例所示:
/** @file HelloPi.c */
/** The definition of pi */
#define PI 3.1415
/** @brief The main function.
* @details Prints the value of #PI, which is actual defined as 3.1415. */
void main()
{
printf("The value of pi is %f\n",PI);
}
在我的 doxygen 文档中,我一般不希望对 PI(和其他定义)进行宏扩展。
但是在文档中的一段中我需要 pi 的值(例如@details description of the main function)。
是否可以使用命令或其他方式在文档的这一部分扩展宏?像 /** @details ...the value of #PI is $(PI).*/
我只知道适用于整个文档的内置 MACRO_EXPANSION 标签:https://www.doxygen.nl/manual/preprocessing.html :-/
感谢您的帮助:)
一月
编辑:
添加另一个可能更好地描述我的问题的示例:
/** @file ErrorHandling.c */
#define ERR_CODE_POWERUNIT 1001 ///< Error in power unit */
/** @page errors
* [value of ERR_CODE_POWERUNIT ] means \copybrief ERR_CODE_POWERUNIT */
void errHandler(int error)
{
if(error=ERR_CODE_POWERUNIT)
printf("Error %d occur\n",ERR_CODE_POWERUNIT);
}
在我想要的文档中:
“1001 表示动力装置错误”
在 doxygen 中,无法(仅)对文档中的预定义变量进行转换。
您在文档中使用了环境变量 $(PI)
,但这非常麻烦,因为您每次都必须 st 环境变量。
更好的解决方案是使用 ALIASES
,例如:
ALIASES += pi=3.1415
或
ALIASES +\= "The value of PI = 3.14159265359..."
用它来定义一个命令\pi
,它可以在文档中使用,并将被别名中的文本/命令替换。
/** @details ...the value of #PI is \pi.*/
会导致类似的结果(由 head:
...the value of #PI is 3.1415
我有一些代码,如下例所示:
/** @file HelloPi.c */
/** The definition of pi */
#define PI 3.1415
/** @brief The main function.
* @details Prints the value of #PI, which is actual defined as 3.1415. */
void main()
{
printf("The value of pi is %f\n",PI);
}
在我的 doxygen 文档中,我一般不希望对 PI(和其他定义)进行宏扩展。 但是在文档中的一段中我需要 pi 的值(例如@details description of the main function)。
是否可以使用命令或其他方式在文档的这一部分扩展宏?像 /** @details ...the value of #PI is $(PI).*/
我只知道适用于整个文档的内置 MACRO_EXPANSION 标签:https://www.doxygen.nl/manual/preprocessing.html :-/
感谢您的帮助:)
一月
编辑: 添加另一个可能更好地描述我的问题的示例:
/** @file ErrorHandling.c */
#define ERR_CODE_POWERUNIT 1001 ///< Error in power unit */
/** @page errors
* [value of ERR_CODE_POWERUNIT ] means \copybrief ERR_CODE_POWERUNIT */
void errHandler(int error)
{
if(error=ERR_CODE_POWERUNIT)
printf("Error %d occur\n",ERR_CODE_POWERUNIT);
}
在我想要的文档中: “1001 表示动力装置错误”
在 doxygen 中,无法(仅)对文档中的预定义变量进行转换。
您在文档中使用了环境变量 $(PI)
,但这非常麻烦,因为您每次都必须 st 环境变量。
更好的解决方案是使用 ALIASES
,例如:
ALIASES += pi=3.1415
或
ALIASES +\= "The value of PI = 3.14159265359..."
用它来定义一个命令\pi
,它可以在文档中使用,并将被别名中的文本/命令替换。
/** @details ...the value of #PI is \pi.*/
会导致类似的结果(由 head:
...the value of #PI is 3.1415