これを英語でどのように表現するかは正確にはわかりませんが、次のようなことをしたいと思います。
template <class T>
class derived: public T
{ blah };
基本的に、テンプレートクラスがありますが、テンプレートで指定されているクラスから新しいクラスを派生させていますか?つまり、コンパイル時にクラスを必ずしも知っているとは限りません。
これも可能ですか?
もしそうなら、これのセマンティクスは何ですか?
たとえば、「親」クラスを作成しようとしているとします。この例では、それが木の親であるとしましょう。ツリーの親は、ツリー自体です(したがって、ツリーから継承します)が、子ツリーへの参照のベクトルもあります。
ただし、親クラス自体はツリーである必要はありません。次のようなものを書くことができるように、それはどのクラスでもかまいません。
Parent<tree> treeParent;
Parent<shrub> shrubParent;