C++开发:template,模板

C++中的template,模板,是用来实现静态多态的。比如创建一个template Class之后,玩家可以选择他们想要的type,来创建一个想要的Class。
例子:

template <typename T>
class Test {
public:
	Max(T a1, T b1) :a(a1), b(b1) {};
private:
	T a;
	T b;
};

这时玩家可以这样

int main() {
	Test<int> T(10, 20);
	cout << T.getA() << endl;

	Test<bool> Ted(false, true);
	cout << Ted.getA() << endl;
}

// 输出10, 0

从getA(),我们可以看出,函数也可以使用模板来创建。

template <typename T>
T Max(const T & a, const T &  b) {
	return a > b ? a : b;
}

这个Max函数便可以根据输入的数据类型来进行对应的大小判断。

综上,模板类可以帮助我们实现代码的静态多态。其使用泛型来定义函数,其中泛型可用具体的类型(int 、double等)替换。通过将类型作为参数,传递给模板,可使编译器生成该类型的函数。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值