c++類迴圈依賴的問題

小兜兜me發表於2024-11-14

目前的一種狀況是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

相關文章