次の方法でテンプレートを使用してデータ構造を作成できることを学びました。
template<typename T>
struct X {
T weight;
int age;
};
関数は、次の方法でテンプレートを使用することもできます。
template <class T>
T func_name(int age, T human) {
something_here;
}
違いの 1 つは、最初のケースでは s を使用typename
し、2 番目のケースでは を使用することclass
です。
以下を含むコードを見つけました。
template<typename S, typename T>
bool is_null(const row<T>& r)
したがって、私が理解できないのは、関数と組み合わせて使用するtypename
(および使用しない) 理由です。class
使うべきではありませんclass
か?