📅  最后修改于: 2023-12-03 14:55:53.039000             🧑  作者: Mango
模板是一种C++语言的特性,它允许程序员在编写代码时使用参数化类型或参数化函数,从而实现代码的重用和泛化。C++的模板功能非常强大,可以为多种类型创建通用代码,可以减少代码的重复编写,提高代码的可维护性和可读性。
template <typename T>
T add(T a, T b) {
return a + b;
}
以上是一个简单的模板函数的示例,它接受两个相同类型的参数,并返回它们的和。使用 template <typename T>
声明了一个模板函数,在函数体内可以使用类型参数 T
定义参数类型以及返回类型。
template <typename T>
class Stack {
private:
T stackArray[100];
int top;
public:
void push(T item);
T pop();
};
以上是一个简单的模板类的示例,它实现了一个通用的栈数据结构。使用 template <typename T>
声明了一个模板类,在类定义中可以使用类型参数 T
定义类的成员变量和成员函数。
int result1 = add<int>(5, 3);
float result2 = add<float>(2.5, 3.7);
以上是函数模板的实例化示例,通过 <typename>
指定了函数模板的类型参数,并传递具体的类型作为参数,可以实例化出具体类型的函数。
Stack<int> intStack;
Stack<float> floatStack;
以上是类模板的实例化示例,通过 <typename>
指定了类模板的类型参数,并在定义对象时传递具体的类型,可以实例化出具体类型的类。
模板是C++中非常强大的特性,可以让程序员轻松地创建泛化的代码,提高代码的可维护性和可读性。使用模板可以实现函数重载、容器类、算法等多种功能,对于提高编程效率和代码质量非常有帮助。