函数模板

写几个show()函数

一些声明
  • 非模板函数
void show(job a, job b);   
  • 通用模板
template <typename T>
void show(T a, T b);                           
  • 显式实例化
template void show<int>(int, int);                
  • 显式具体化
template <>
void show <job>(job a, job b);                                   
具体定义
template <typename T>
void show(T a, T b)                //通用模板
{
    cout << a + b << endl;
}

//显式实例化不许重新定义

template <>
void show <job>(job a, job b)            //显式具体化
{
    cout << "显式具体化" << endl;
    cout << a.age + b.age << endl;
}

void show(job a, job b)                    //非模板函数
{
    cout << "非模板函数" << endl;
    cout << a.age + b.age << endl;
}  
开始用了
ios_base::fmtflags initial = cout.setf(ios_base::showpoint);
show(1, 2);                //显式实例化
show(1.0, 2.0);            //通用模板
job people1, people2;        
people1.age = 23;
people2.age = 34;
show(people1, people2);            //都匹配时,普通函数优先  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值