1

私は考え抜かれたプロジェクトに取り組んでいますが、かなり不十分です。互いのメンバー関数にアクセスするサブクラスがあります。状況は次のとおりです。

class A {
public:
    class B;
    class C;
};

class A::B {
public:
    void f() {
        C:g();
    }
}
class A::C {
public:
    void g() {
        B:f();
    }
}

このコードは、明らかに、ここではリストが多すぎるさまざまなエラーに遭遇します。私の質問は、そのような状況の解決策は何ですか? 継承ですか?もしそうなら、どのように?クラスBとCの「相互作用」の性質を維持する他の方法はありますか.

4

2 に答える 2

-1

メソッド定義をクラス宣言の外に移動して、両方のクラスが宣言され、それらのメソッドが互いに可視になるようにします。

于 2013-01-27T10:06:47.303 に答える