c - 如何使用 Doxygen 记录指向函数指针 vector 的指针

标签 c doxygen

我正在用 C 编写代码,但遇到以下情况:

typedef struct MyStruct {
   /** Some comment */
   int (*const (*FuncList)[])(void);
} MyList;

Doxygen 返回以下错误:警告:记录的符号 `int (*const MyStruct::FuncList' 未声明或定义。

它看出 Doxygen 不理解什么是指向函数指针 vector 的指针,因为如果我换成一个更简单的句子它就可以工作。 我不能改变写这句话的方式,因为我的代码必须符合 MISRA。

最佳答案

我认为您应该通过使用一些 typedef 来帮助 doxygen(以及您代码的读者),例如

/** A function pointer */
typedef int (*TFuncPtr)(void);

/** const pointer to an array of TFuncPtr's */
typedef TFuncPtr (*const TFuncList)[];

typedef struct MyStruct {
     /** Some comment */
     TFuncList FuncList;
} MyList;

我很确定 MISRA 会同意。

关于c - 如何使用 Doxygen 记录指向函数指针 vector 的指针,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21017218/

相关文章:

c - 如何在 C 结构中访问指向二维数组的指针?

c++ - Doxygen show 功能简述

c++ - 使用 doxygen 记录 C++ 概念?

c++ - 如何让 Oxygen 到 "link"以枚举定义?

c# - Visual Studio 多个项目 C# 和 C++ 文档

c++ - Doxygen @param 方向参数 [in],[out],[in,out] 示例输出

c - OpenSSL 请求长度 - 如何计算大小?

c - STM32F4 - 我可以在中断例程中使用延迟吗?

c - fgets() 跳过

C 变量声明