3

Doxygen有一个非常整洁的功能,它将从代码生成继承图。然而,使用从一个共同的基类多重继承的时候,该图显示了两个独立的基类(即使我使用的是标志着由周围的基类中的虚线虚拟继承)如何使Doxygen显示钻石继承图

enter image description here

如何我可以让Doxygen绘制更多如下内容。 。 。

 D 
    /\ 
    B C 
    \/
    A 

而不是:(如不发生虚继承)

 D 
/ \ 
    B C 
    | | 
    A A 
+0

你知道,我upvoted并收藏这在很久以前,但我越去想它,我越觉得doxygen的是实际上就在这里,因为D将有2个A的实例。 – IdeaHat

+1

如果继承是虚拟的,将不会有2个实例通过'class B:public virtual A { –

回答

2

如果设置HAVE_DOT标签为YES,那么doxygen的将承担的点工具 可用的路径。该工具是Graphviz的一部分(参见: http://www.graphviz.org/),来自AT & T和Lucent 贝尔实验室的图形可视化工具包。如果此选项为 设置为NO ,则此部分中的其他选项无效。默认值为:NO。

设置为

HAVE_DOT = YES

+0

}值得补充的是,如果你没有'dot ',在Ubuntu上它只是一个'sudo apt-get install graphviz'。 – dwanderson