次の問題があります。基本クラスとそれを継承するいくつかのクラスがあります。これらのクラスはすべて非常によく似たインターフェイスを共有しており、ほとんどの共有メソッドをオーバーロードする必要はほとんどありません。
ただし、それらはすべて、互いに派生し、非常に類似したインターフェースを共有する異なるメンバーオブジェクトを使用しています。
class BaseClass
{
protected:
Com* com;
public:
void setReady()
{
com->setReady();
}
}
class DerivedClass : BaseClass
{
protected:
DerivedCom* com;
}
class Derived2Class : BaseClass
{
protected:
Derived2Com* com;
}
から継承されたバージョンの代わりに、のバージョンを実行できるようにするにはどうすればよいDerivedClass
ですか?setReady()
com
BaseClass