循環包含頭文件導致編譯報錯:missing type specifier - int assumed. Note: C++ does not support default-int
比如
A.h
#include "B.h"
class A{
B b;
}
-----------------------
B.h
#include "A.h"
class B{
A a;
}
這樣就會出現頭文件循環包含的問題
可以利用前置聲明的方式實現,但是變量要用指針的形式,因爲前置聲明只是一個類型的聲明,系統無法知道它的大小無法分配內容
A.h
class B;
class A{
B *b;
}
------------------
B.h
class A;
class B{
A *a;
}