3

C++ のネストされた継承について質問があります。BaseMiddleおよびの 3 つのクラスがありTopます。通常、 から派生するときはパブリック継承を使用しますが、からプライベートに継承するMiddleクラス ( ) が 1 つありますが、パブリックに使用するメソッドを公開する必要があります...TopMiddleBase

これが私の解決策です。大丈夫ですか?

class Base
{
    // ...
}

class Middle :
    public virtual Base
{
    // ...
}

class Top :
    public virtual Base,
    private Middle
{
    // ...
}
4

1 に答える 1

2

Baseメンバー関数 があるとします。fooこれを に入れることができますTop:

public:
    using foo;

公開する必要がある他のメンバーについても同じです。

于 2011-01-12T13:28:27.750 に答える