C++(template)
这是 C++ 中的模板声明,用于定义一个通用的模板(template)。这种模板可以用于创建通用的、类型无关的代码,使得可以在不同的数据类型上使用相同的算法或数据结构。
具体而言,template
关键字声明了一个模板,typename T
则是模板参数声明,表示一个未知的类型 T
,可以在模板的定义中使用 T
代表任意类型。这个模板可以用于定义函数、类、或类中的成员函数等。
下面是一个例子,展示了如何在函数模板中使用 T
:
#include <iostream>
// 函数模板,计算两个值的最大值
template<typename T>
T max(T a, T b) {
return (a > b) ? a : b;
}
int main() {
std::cout << "Max of 3 and 7: " << max(3, 7) << std::endl; // 使用模板函数,T 被推导为 int
std::cout << "Max of 3.5 and 2.8: " << max(3.5, 2.8) << std::endl; // 使用模板函数,T 被推导为 double
return 0;
}
在上述代码中,template<typename T>
表示这是一个模板,T
是一个未知的类型。max
函数模板可以接受两个相同类型的参数,并返回它们中的最大值。在 main
函数中,我们使用该模板来计算两个整数和两个浮点数的最大值。
这样的模板能够提供一种通用的方法,使得代码更具有通用性和灵活性。在模板中,编译器会根据使用时的参数类型进行类型推导,从而生成对应类型的代码。