C++里类之间的相互调用很麻烦,A调用B,B又调用A。 特别是A,B不在同一文件的时,得相互包含,include 关系很复杂 。可以写成这样:
//File A.h
class B;
class A
{
public:
...
privat:
...
B* b;
};
//end A.h
//File A.cpp
#include "B.h"
A::A()
{...}
A::~A()
{...}
...
//end A.cpp
//File B.h
#include "A.h"
class B
{
public:
...
private:
...
A* a;
};
//end B.h
//File B.cpp
#include "B.h"
B::B()
{...}
B::~B()
{...}
...
//end B.cpp
本文介绍了一种解决C++中两个类互相调用时出现的头文件包含问题的方法。通过在声明类时使用前向声明,可以避免复杂的相互包含问题,并保持代码的清晰性和模块化。

2221

被折叠的 条评论
为什么被折叠?



