수업에 문제가 있습니다.다른 클래스를 사용하는 클래스
두 개의 별도 헤더가 있습니다. Color.h 및 Painter.h :
1). Color.h
class Color{
int number;
public:
void initialize();
void change (Painter draw);
}
2). Painter.h
class Painter{
Color a,b;
public:
void get();
void draw();
}
내 문제는 필자가 Color 클래스에서 Painter를 사용해야하고 Painter 클래스에서 Color를 사용해야한다는 것입니다. Qt에서 Painter가 유형이 아니라는 오류가 발생합니다. 이 문제를 어떻게 해결할 수 있습니까? 그 문제에 대한 해결책은 무엇입니까?
painter.h
을 포함 거기color.cpp
에서 그것을 정의합니다void change (Painter draw);
방법을 클래스에 전달하고 전달 된 선언 클래스에 대한 포인터 만 사용하십시오. 하지만 단순한 경우에 순환 종속성이있는 경우 소프트웨어 디자인을 변경하는 것이 좋습니다 –