栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > C/C++/C#

c++类模板对象做函数参数的三种方式

C/C++/C# 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

c++类模板对象做函数参数的三种方式

#include
#include
using namespace std;
//类模板对象做函数参数
template
class person {
public:
	T1 m_name;
	T2 m_age;
	person(T1 name, T2 age) {
		m_name = name;
		m_age = age;
	}
	void showperson() {
		cout << "姓名:" << m_name << " 年龄: " << m_age << endl;
	}
};
//1指定传入类型
void showperson1(person&p)
{
	p.showperson();
}
void test1() {
	person p1("孙悟空", 100);
	showperson1(p1);
}
//2参数模板化
template
void showperson2(person& p) {
	p.showperson();
	cout << "T1的类型为: " << typeid(T1).name() << endl;
	cout << "T2的类型为: " << typeid(T2).name() << endl;
}
void test2() {
	person p2("猪八戒", 90);
	showperson2(p2);
}
//整个类模板化
template
void showperson3(T& p) {
	p.showperson();
	cout << "T的类型为: " << typeid(T).name() << endl;
}
void test3() {
	person p3("唐僧", 30);
	showperson2(p3);
}

int main() {
	test1();
	test2();
	test3();
	system("pause");
	return 0;
}

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/347767.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号