私の質問の複雑なタイトルで申し訳ありません。概念的には非常に単純ですが、それを行うための適切な設計が見つかりません。
私はエンドユーザーがアクセスできる基本クラスを持っています:
class A {
private:
// m is a functor
Base* m;
};
class Base {
public:
virtual void someInterface();
};
class DerivedT1 : public Base {
public:
virtual void someInterface()
{
some_parameter++;
}
private:
int some_parameter; // how to set?
};
class DerivedT2 : public Base {
public:
virtual void someInterface()
{
some_other_parameter += a_third_parameter;
}
private:
double some_other_parameter; // how to set?
double a_third_parameter; // how to set?
};
some_parameter
そして、の public インターフェイスsome_other_parameter
から設定する最も一般的な方法を見つけようとしています。A
パラメータに数値を与えることを考えましたが、これは本当に見苦しく聞こえます。
これを行う美しいオブジェクト指向の方法はありますか?