"和 "template "有什么区别?-6ren"> "和 "template "有什么区别?-这个问题在这里已经有了答案: 关闭10年前。 Possible Duplicate: Use 'class' or 'typename' for template parameters? 我看到两个不-6ren">
gpt4 book ai didi

c++ - "template "和 "template "有什么区别?

转载 作者:IT老高 更新时间:2023-10-28 23:09:33 27 4
gpt4 key购买 nike

Possible Duplicate:
Use 'class' or 'typename' for template parameters?

我看到两个不同的模板类声明:

template <class T> class SampleClass1
{
// ...
};

template <typename T> class SampleClass2
{
// ...
};

这两个代码有什么区别?

编辑:我将错误的关键字“typedef”更正为“typename”。

最佳答案

如果通过

template <typedef T> class SampleClass2

你是说

template <typename T> class SampleClass2

那么没有区别。 classtypename 的使用(在引用类型的模板参数的上下文中)是可以互换的。

此处允许使用两个关键字的原因是历史原因。见 this article详细解释。

关于c++ - "template <class T>"和 "template <typename T>"有什么区别?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4534313/

27 4 0