を継承するクラステンプレートの宣言が、私はもっとここに詳しく説明しようとするでしょう。私は はC++で別のクラステンプレートから紛らわしいタイトルのために申し訳ありません
は私がベースとして使用していますつのパラメータに依存クラステンプレートを持っている...私はそれを見逃している場合は、右のスレッドに私をポイントしてくださいので、検索経由して、この特定の問題を見つけることができませんでしたクラス:template <class TVertex>
class DrawExecutorDX11
{
public:
DrawExecutorDX11();
virtual ~DrawExecutorDX11();
void AddVertex(const TVertex& vertex);
protected:
TGrowableVertexBufferDX11<TVertex> VertexBuffer;
};
私がやりたいことは、このクラスのテンプレートから継承することであり、同時にサブクラスに別のクラスのテンプレートパラメータを追加します。私は、この構成は、私はそうのようなサブクラスのテンプレートのインスタンスを宣言できるようになることを期待しています
template <class TVertex, class TInstance>
class DrawInstancedExecutorDX11<TInstance> : public DrawExecutorDX11<TVertex>
{
public:
DrawInstancedExecutorDX11();
virtual ~DrawInstancedExecutorDX11();
void AddInstance(const TInstance& data);
protected:
TGrowableVertexBufferDX11<TInstance> InstanceBuffer;
};
:構文での私の試みは、このようなものになるだろう
DrawInstancedExecutorDX11<VertexStruct,InstanceStruct> myExecutor;
しかし、VS2012は、」doesnのサブクラスのコンパイルも検討し、クラスDrawInstancedExecutorDX11の後にセミコロンが必要であることを示しています。正直言って、このタイプのテンプレートアレンジメントをこれまでに試したことはないので、他の誰かがこれをやったのかと思っています。もしそうなら、私が作っている基本的な文法間違いやその他の落とし穴がありますか?あなたが与えることができる任意の助けや指導のために事前に感謝!
の横に空のチェックマークが表示されるはずです。答えに感謝します(@ K-balloと同時に回答しました)。それはまた、答えにいくつかの追加のコンテキストを追加します。再度、感謝します! –