다음과 같은 순환 종속성을 어떻게 해결해야합니까?각 종속 구조가 그 메소드에 액세스하는 순환 종속성 해결
//A.hpp
#include "B.hpp"
struct A {
B b;
int foo();
};
//A.cpp
#include "A.hpp"
int A::foo{
b.fi(*this);
}
//B.hpp
struct A;
struct B {
int fi(const A &a);
};
//B.cpp
#include "B.hpp"
int B::fi(const A &a){
if(a.something())
something_else();
}
사용 앞으로 선언 –
는 :: 뭔가()가 호출된다. 마찬가지로 B :: fi (const A &)가 호출되기 때문에 A.hpp에서 B를 선언 할 수 없습니다. – MVTC
위와 같이 할 수 없으며'#include "A.hpp"'B.cpp'에도 없습니까? –