Doxygen:防止由于前向声明和模板导致的重复

Sza*_*lcs 8 c++ doxygen

Doxygen通常很好地处理前向声明.例如,

/** \file */

class A;

class B {
    // uses A
};

class A {
    // uses B
};
Run Code Online (Sandbox Code Playgroud)

结果是

在此输入图像描述

没有重复A.

但是,如果我制作AB类模板,则A提取两次:

/** \file */

template<typename T> class A;

template<typename T>
class B {
    // uses A<T>
};

template<typename T>
class A {
    // uses B<T>
};
Run Code Online (Sandbox Code Playgroud)

在此输入图像描述

我怎么能阻止这个?

alb*_*ert 2

在版本 1.8.13 - 1.8.18 中,我可以看到所示的行为。使用当前的 doxygen master,即 1.8.19 (0937faf2d168b64f5ccf55c1976bc045d5d12569),这个问题看起来已经解决,并且仅class B<T>显示class A<T>出来。

(目前尚不清楚/计划何时发布 1.8.19,1.8.18 版本已于 2020 年 4 月 12 日发布)。