0

问题是 A 类依赖于 B 类,反之亦然。编译器会抱怨未知类型。通常的解决方案是前向声明类。但是如何声明模板类呢?

4

1 回答 1

0

我花了一段时间才找到解决方案,所以我想我可以通过在此处发布“模板”来让别人的生活更轻松。

// Header A.h
template<class z, class w = float>
class B;

template<class x, class y = double>
class A
{
    B mb;
}


// Header B.h
template<class x, class y = double>
class A;

template<class z, class w = float>
class B
{
    A mA;
}

此外,您可以更改模板声明中的可选参数。

于 2012-10-15T13:11:20.703 回答