template <class T>详细解释
时间: 2023-08-07 14:02:00 浏览: 156
cpp代码-模板 泛型 template<typename> template<class>
`template` 关键字用于声明一个模板,它可以定义一个通用性更强的类或函数。模板允许我们编写一种形式化的代码,该代码可以适用于不同类型的数据或参数。
`<class T>` 是模板的声明部分,其中 `T` 是一个占位符名称,可以是任何标识符。在使用模板时,`T` 将被实际类型替换,以便生成具体的类或函数。
例如,下面是一个使用模板创建一个通用的 `swap` 函数的示例:
```cpp
template <class T>
void swap(T& a, T& b) {
T temp = a;
a = b;
b = temp;
}
```
这个函数使用了一个占位符类型 `T`,它可以代表任何类型的参数。因此,可以使用 `swap` 函数交换任何类型的变量,包括整数、浮点数、字符串等。
使用模板时,需要在函数或类名后面加上 `<typename>` 或 `<class>` 关键字,然后在括号内指定实际类型。例如,要交换两个整数,可以这样调用 `swap` 函数:
```cpp
int a = 10, b = 20;
swap<int>(a, b); // 使用 <int> 指定占位符类型 T 为 int
```
阅读全文