C++模板类:深入理解与实践

发表时间: 2024-02-21 08:28

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>,分别处理整数和浮点数类型的数据。

类模板使得编写通用的数据结构和算法变得更加容易和灵活,可以在不同的数据类型上重用相同的代码逻辑,提高了代码的可重用性和可维护性