クラス A があり、B のプロパティを更新するメソッドがあります。したがって、継承が必要です。
class B{
public:
int x;
};
class A : public B{
public:
void update(int y){
x = y;
}
};
クラスBを介して関数「更新」にも到達したいので、合成も必要です。
class B{
public:
A a;
int x;
};
class A : public B{
public:
void update(int y){
x = y;
}
};
オブジェクト型 B のプロパティを次のように追跡したいので、そのような構造が必要です。
...
B.a.update(5);
int n = B.x;
ただし、クラス A を宣言する前に構成を使用することはできず、クラス B を宣言する前に継承を使用することはできません。この無限ループを解決するにはどうすればよいですか?