在代码中,两个类相互引用的问题,那么我们就需要在头文件中相互写 #include,这样会造成相互循环cpoy头文件,编译器报错,为了解决这个问题,设置了前置声明这个方法。
A.h
#ifndef A_H
#define A_H
class B
class A{
typedef vector<string>::sizetype size_type;
B* b;
}
#endif
B.h
#ifndef B_H
#define B_H
#include "A.h"
class B{
A::size_type num;
}
#endif
前置声明,解决了在A中可以调用B,但在单元编译时,无法确定B的size,所以把B定义成B*,固定大小为系统大小,就解决了。
标签:ifndef,前置,C++,嵌套,解决,声明,class,size From: https://www.cnblogs.com/kafeibuhuizui/p/17545492.html