タイプがテンプレートクラスである変数があり、別のテンプレートクラスの別の変数を作成したいが、同じテンプレートパラメーターを使用する場合、どうすればよいですか?
以下の例は機能しませんが、うまくいけば、私が達成しようとしていることのアイデアが得られます。これを行うための非常に具体的な方法がない場合、これを行うためのある種のルックアップテーブルデザインパターンを持つ方法はありますか?おそらく私が使用することになるテンプレートタイプは6つほどしかありません。
template<typename T>
class A{
public:
typedef T Type;
};
template<typename T>
class B{};
int main(void){
A<int> var1;
B<var1::Type> var2;
}
これが重複した質問である場合はお詫びしますが、以前にこのような質問があったことはありませんでした。
編集
サードパーティのライブラリを使用せずに、これをVisualStudio2010およびgccで機能させる方法を希望します。したがって、すべてのC++11機能がサポートされているわけではありません。
また、このコードは、私が欲しいものの基本的な機能を示すための単なるテストケースシナリオであるため、typedef A<int>
またはを使用せずに。A<int>
タイプがテンプレートである変数からテンプレートタイプを取得する方法が必要です。