面试题答案
一键面试类模板声明基本语法结构
template <typename T>
class ClassName {
// 类成员声明
};
template <typename T>
声明这是一个模板,T
是类型参数。ClassName
是类模板的名称,在类内部可以使用 T
来表示具体类型。
对两种不同类型数据进行加法操作的类模板声明示例
template <typename T1, typename T2>
class Adder {
public:
Adder(T1 a, T2 b) : num1(a), num2(b) {}
auto add() {
return num1 + num2;
}
private:
T1 num1;
T2 num2;
};
在上述代码中,Adder
类模板接受两个类型参数 T1
和 T2
。构造函数接受两个不同类型的参数并保存。add
成员函数返回两个不同类型数据相加的结果。