c++ template - 模板函数 1

//  模版编译
// 1.实例化前,语法检查!
// 2.实例化时,检查模版代码,是否调用有效,如某些实例化类型不支持某些函数调用!
//     有模版函数与非模板函数,共存时,优先调用非模板函数!

// - - - - - - - - - - - -- - -- - - - - - - - - return type ...
template <typename T1,typename T2,typename rt>
inline RT max(T1 const& a, T2 const& b);
...

max<int,double, double>(4,4.2);//ok

template <typename RT, typename T1,typename T2>
max<double>(1,4.2) //ok return double

// - - - - - - - - - - - -- - -- - - - - - - - - - different types of parameter...

template <typename T1,typename T2>
inline T1 max(T1 const &a , T2 const &b)
{
 return a<b:?b:a;
}
//可能要转化T2位返回...
//T2 返回是,会创建临时对象,不能通过应用返回

// - - - - - - - - - - - -- - -- - - - - - - - - - - - - - - - --  - -  - - - -

黄山

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值