c++类模板的简单使用

#include <iostream>
#define elmtpe char//在此修改要处理的数据类型

using namespace std;

/*///引用的函数原型//
class Compare
{
private:
	int x, y;
public:
	Compare(int a = 0, int b = 0):x(a), y(b){}
	int Max();
	int Min();
};

int Compare::Max()
{
	return ((x > y)? x:y);
}

int Compare::Min()
{
	return ((x < y)? x:y);
}
*/

template <class elemtype>//声明一个模板,虚拟类型为elemtype
class Compare
{
private:
	elemtype x, y;
public:
	Compare(elemtype a = 0, elemtype b = 0):x(a), y(b){}//创建构造函数,默认值为0
	elemtype Max();
	elemtype Min();
};

template <class elemtype>//由于方法在类外定义,需要指定以下函数也使用的虚拟数据类型
elemtype Compare<elemtype>::Max()//返回类型为elemtype类型,"Compare<elemtype>"是一个整体,表示带参数的类,
{
	return ((x > y)? x:y);
}

template <class elemtype>//同上
elemtype Compare<elemtype>::Min()//同上
{
	return ((x < y)? x:y);
}

int main(int argc, char const *argv[])
{
	elmtpe a,b;
	cout << "input 2 numbers:" << endl;
	cin >> a >> b;
	Compare<elmtpe> cmp(a,b);//使用类模板定义对象
	cout << "min = " << cmp.Min() << endl << "max = " << cmp.Max() << endl;
	return 0;
}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值