我想在doxygen输出中获得枚举成员的实际值.比如我有:
///MyEnum
typedef enum My_Enum
{
MY_ENUM_0,///<MY_ENUM_0
MY_ENUM_1,///<MY_ENUM_1
MY_ENUM_2 ///<MY_ENUM_2
} My_Enum;
Run Code Online (Sandbox Code Playgroud)
输出是:
MyEnum.
Enumerator:
MY_ENUM_0
MY_ENUM_0.
MY_ENUM_1
MY_ENUM_1.
MY_ENUM_2
MY_ENUM_2.
Run Code Online (Sandbox Code Playgroud)
我想要的是:
Enumerator:
MY_ENUM_0
0 MY_ENUM_0.
MY_ENUM_1
1 MY_ENUM_1.
MY_ENUM_2
2 MY_ENUM_2.
Run Code Online (Sandbox Code Playgroud)
或类似的东西.
使用 doxygen,我们可以记录:
enum
以下代码片段描述了上述所有 3 个示例。
/*! \enum My_Enum
* Documentation of the enum type.
*/
typedef enum My_Enum {
MY_ENUM_0, /*!< Document the value 0 */
MY_ENUM_1, /*!< Document the value 1 */
} My_Enum;
/*! \var My_Enum MY_ENUM_0
* The description of the MY_ENUM_0. Can contain its enumerated name */
/*! \var My_Enum MY_ENUM_1
* The description of the MY_ENUM_1. Can contain its enumerated name*/
Run Code Online (Sandbox Code Playgroud)
另请注意,由于宏/枚举扩展不会在 doxygen 注释中发生。如果在 doxygen 注释中使用了任何内容,则需要使用 来扩展它们INPUT_FILTER
。例如:
INPUT_FILTER = sed /MY_ENUM_0/0
Run Code Online (Sandbox Code Playgroud)
以下代码片段是必需的
typedef enum My_Enum {
MY_ENUM_0, /*!< MY_ENUM_0 */
...
Run Code Online (Sandbox Code Playgroud)
另请查看此答案以获取有关多种 doxygen 评论风格的详细信息:
///< <comment>
/*!< <comment> */