目前的一種狀況是A類中以B類指標作為成員變數,B類在構造時需傳入A類指標作為引數。
a.h
class A{
B *b;
};
b.h
class B{
B(A *a);
};
這種情況需要在標頭檔案中前向宣告,然後在.cpp檔案中include另一個類的標頭檔案。如下:
a.h
class B;
class A{
B *b;
};
b.h
class A;
class B{
B(A *a);
};
a.cpp
#include "a.h"
#include "b.h"
// +其他內容
b.cpp
#include "b.h"
#include "a.h"
B::B(A *a){
}
// +其他內容
這樣問題就解決了,迴圈依賴有很多種情況,我遇到的這種只是其中一種,想了解更多檢視
https://blog.csdn.net/wangjie112358/article/details/135824167