5

私の知る限り、mixin は最初に派生クラスを作成するときであり、その後、テンプレート パラメーターを介して基底クラスをそれに注入できます。

例: http://www.drdobbs.com/cpp/mixin-based-programming-in-c/184404445

私が知っているように、ポリシーベースの設計は同じことを目的としています。 http://en.wikipedia.org/wiki/Policy-based_design

それから派生する必要があるとは言っていません。テンプレート パラメーターを他の方法で使用することもできます。ただし、たとえばウィキペディアのポリシーベースの設計例では、次のようなものです。

template<typename Base>
class Derive: private Base

これは mixin と同じだと思います。(代わりに、ミックスインでは通常パブリック継承を使用します)

それらの間に大きな違いはありますか、それともミックスインはポリシーベースの設計の特別なケースですか?

4

0 に答える 0