0
テンプレートの知識はこの場合少し錆びます。クラスA
(2つのテンプレートパラメータ、T1
とT2
とテンプレートクラス)、どのように1が正しく以下f()
方法で使用される関数パラメータmyType
を宣言することができインサイドテンプレートパラメータを使用してテンプレートタイプを作成する
:
template<typename T1, typename T2>
class A
{
void f(T1<T2> myType);
void g(T2 myType2)
}
編集:使用、 T2
はテンプレート化されていないタイプですが、T1
はテンプレート化タイプです。
理由はT1
を使わずにT2
を単独で使用できるユースケースがあるということです。しかし、私はT1
に依存して(依存関係をクリアするために)T2
を定義したいと思います。
'void f(int myType);'は何をしますか?これは意味がありません。 –
簡単な使用目的を示してください。 –
あなたの混乱は、あなたのうっすらな言葉の使用から来るかもしれません。 「テンプレート型」というものはありません。 *型*があり、*テンプレート*があります。タイプはテンプレートではなく、テンプレートはタイプではありません。型は、テンプレートの(特殊化された)*結果*かもしれませんが、テンプレートをその特殊化と区別することが重要です。 –