我有一个问题,我在每个级别使用不同的类实现了一棵树。指向树项的指针是 boost::shared_ptr<>。
因为每个级别都存储了一个指向父级的指针和一个指向其子级的指针,所以头文件中存在循环依赖关系。
代码如下所示:
//A.hpp
class A
{
List<boost::shared_ptr<B> > children;
};
//B.hpp
class B{
boost::shared_ptr<A> parent;
};
因为我使用 boost::shared_ptr 我不能在 B.hhp 中使用前向声明。但我不知道如何解决这个问题。如果你能帮助我,那就太好了。