時々、私は本当に単純なラッパーを書いていることに気付くことがあります。ラッパーメソッドは、適合クラスの1つのメソッドに直接対応します。
class ToBeAdapted
{
public:
void a();
void b(int arg);
};
class Wrapper
{
public:
void newA()
{
_adapted.a();
}
void newB(int arg)
{
_adapted.b(arg);
}
private:
ToBeAdapted _adapted;
};
これは(おそらくテンプレートマジックやダークプリプロセッサの儀式を使用して)ある程度一般化できますか?単に書き込み時間を節約し、後でラッパーインターフェイスを簡単に切り替えることができますか?
このようなものはかっこいいでしょう:
wrap_around<ToBeAdapted>(ToBeAdapted::a, newA, ToBeAdapted::b,newB) Wrapper; //Creates the same wrapper class as specified above.