C++ 类模板允许你创建可处理多种数据类型的类。类模板的工作方式类似于宏,但更安全、更易于维护。要处理多种数据类型,你需要使用模板参数。模板参数在尖括号内定义,可以是一个类型、一个值或者一个模板。
以下是一个简单的 C++ 类模板示例,该模板用于计算给定类型的两个值的和:
#include <iostream>
// 定义一个类模板 Sum
template <typename T>
class Sum {
public:
// 构造函数,接受两个参数并存储它们
Sum(T a, T b) : num1(a), num2(b) {}
// 成员函数,计算并返回两个数的和
T add() {
return num1 + num2;
}
private:
T num1, num2; // 使用模板参数 T 定义成员变量
};
int main() {
// 使用整数类型实例化类模板
Sum<int> intSum(3, 5);
std::cout << "Integer sum: " << intSum.add() << std::endl;
// 使用浮点类型实例化类模板
Sum<float> floatSum(3.5f, 5.5f);
std::cout << "Float sum: " << floatSum.add() << std::endl;
return 0;
}
在这个示例中,我们定义了一个名为 Sum
的类模板,它接受一个类型参数 T
。类模板有两个成员变量(num1
和 num2
),它们的类型由模板参数 T
决定。类模板还有一个成员函数 add()
,用于计算两个数的和。
在 main()
函数中,我们使用整数类型(int
)和浮点类型(float
)分别实例化了 Sum
类模板。然后我们调用 add()
函数来计算两个数的和,并将结果输出到控制台。