如何使用Doxygen来记录指向函数指针向量的指针

时间:2014-01-09 10:12:39

标签: c doxygen

我在C中编写代码,我遇到以下情况:

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

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

它认为Doxygen不理解什么是指向函数指针向量的指针,因为如果我改为更简单的句子就可以了。 我无法改变写这句话的方式,因为我的代码必须符合MISRA。

1 个答案:

答案 0 :(得分:2)

我认为你应该通过使用某些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会同意。