C++模板类是一种特殊的类模板,允许您定义一个通用的类,可以处理不同类型的数据。类模板通过使用关键字 template 来定义,并且可以有一个或多个模板参数。
下面是一个简单的C++模板类的示例:
#include <iostream>
// 定义一个模板类
template<typename T>
class Pair {
private:
T first;
T second;
public:
Pair(T f, T s) : first(f), second(s) {}
T getFirst() const { return first; }
T getSecond() const { return second; }
};
int main() {
// 实例化一个 Pair<int> 类型的对象
Pair<int> intPair(5, 10);
std::cout << "First: " << intPair.getFirst() << ", Second: " << intPair.getSecond() << std::endl;
// 实例化一个 Pair<double> 类型的对象
Pair<double> doublePair(3.14, 2.71);
std::cout << "First: " << doublePair.getFirst() << ", Second: " << doublePair.getSecond() << std::endl;
return 0;
}
在这个例子中,Pair 是一个模板类,它有一个模板参数 T,表示成员变量的类型。Pair 类有两个成员变量 first 和 second,它们都是类型 T。在 main 函数中,Pair 类被实例化了两次,分别为 Pair<int> 和 Pair<double>,分别处理整数和浮点数类型的数据。
类模板使得编写通用的数据结构和算法变得更加容易和灵活,可以在不同的数据类型上重用相同的代码逻辑,提高了代码的可重用性和可维护性