C++(template模板 && 类模板,做函数参数)

C++(template模板 && 类模板,做函数参数)

类模板,作为函数参数的几种形式

//1 指定传入类型
void doWork(Person<string, int> &p)
{
	p.show();
}
void test03()
{
	Person<string, int> p("MT", 10);
	doWork(p);
}
//2 参数模板化
template<class T1,class T2>
void doWork2(Person<T1, T2> &p)
{
	p.show();
}
void test04()
{
	Person<string, int> p("小赵", 26);
	doWork2(p);
}
//3 整体类型化
template<class T>
void doWork3(T &p)
{
	cout << typeid(T).name() << endl;
	p.show();
}
void test05()
{
	Person<string, int> p("猎人", 18);
	doWork3(p);
}
int main()
{
	test05();
	return 0;
}

posted on 2021-04-26 11:09  lodger47  阅读(350)  评论(0)    收藏  举报

导航