我了解到可以通过以下方式使用模板创建数据结构:
template<typename T>
struct X {
T weight;
int age;
};
这些函数还可以通过以下方式使用模板:
template <class T>
T func_name(int age, T human) {
something_here;
}
不同之处之一是在第一种情况下我们使用typename
,而在第二种情况下我们使用class
。
我发现包含以下内容的代码:
template<typename S, typename T>
bool is_null(const row<T>& r)
所以,我无法理解的是为什么我们将typename
(而不是class
)与函数结合使用。我们不应该使用class
吗?