这可能听起来像科幻小说的功能请求,但我想知道Doxygen是否具有以下两个功能中的任何一个:
在预处理器运行输入文件后生成调用/调用者图形。
例如:
#define MULTITHREADING 1
然后启用或禁用代码块,具体取决于是否启用了MULTITHREADING
。
使用图形箭头描述调用的确定性 ...例如,如果不总是调用该函数,则使用虚线(也就是说它位于分支中,或者您可能{在调用函数之前{1}}。
答案 0 :(得分:5)
对于第一项,您需要在Doxyfile
中启用ENABLE_PREPROCESSING
选项。
对于第二个,老实说我不知道,但如果确实如此会非常惊讶。我认为这需要一个完整的C / C ++编译器来确定这些东西。
答案 1 :(得分:5)
Doxygen Preprocessing:
用作doxygen输入的源文件可以解析 doxygen的内置C预处理器。
默认情况下,doxygen仅进行部分预处理。这就对了 评估条件编译语句(如#if)并进行评估 宏定义,但它不执行宏扩展。
如果COLLABORATION_GRAPH和HAVE_DOT标记设置为YES,那么 doxygen将为每个记录的类生成一个图表,显示 直接和间接实现依赖(继承, 包含类和其他类的类和类引用变量 记录的课程。