次の宣言があるとします。
class Over1
{
protected:
class Under1
{
};
};
私は次のことができることを知っています:
class Over2 : public Over1
{
protected:
class Under2 : public Under1
{
};
};
しかし、Over2 なしで Under2 を宣言する方法はありますか?
Under1 の派生物を使用するには Over1 を拡張する必要があるため、これはばかげているように思えるかもしれませんが、この状況では、30 種類の Under のフレーバーが存在する可能性があります。次のいずれかを実行できます。
- それらをすべて Over1 内に配置する: Over2 はそれらの 1 つまたは 2 つしか使用しない可能性があるため、魅力的ではありません
- それらをそれぞれ独自のバージョンの Over に配置します。魅力的ではありません。そのため、ほぼ同じクラスから複数の継承を行う必要があります。
- Over1 の子を作成せずに Under1 の子を作成する方法を見つける
それで、これは可能ですか?
ありがとう。