简单了解 函数重载与函数模板

简单了解 函数重载与函数模板 

函数重载:   
                       重载函数必须是 参数个数、参数类型、参数顺序3者中至少有一个相同,函数返回类型可以相同,也可以不相同!
                     
                       此时有个问题是, 若你定义一个函数与标准库里的函数名字相同,是可以的,前提是你要重载标准库里的这个函数!
                       
                      或者是你把这个函数和标准库里的函数写的一样也是可以的! 
                      
                       否则,就会报错!   错误一般是:    对重载函数的调用不明确

                       要记住的是,你要让编译器清楚的知道你要调用的是哪个函数,不能有歧义!


函数模板
                    template <typename T>

                   函数重载毕竟还要把每一个函数都要实现,此时,函数模板的优势就体现出来了,他比函数重载更方便,程序更简洁!

                   但是,函数模板只适用 函数体相同,参数个数相同而类型不同的情况,若参数个数不同,就只能用重载了。
                   

函数重载与模板函数的相同点就是,你不用专门为相同类型或功能的函数都各自命名并一个一个实现,在调用过程中程序会选择最适合的一个进行调用。

要时刻注意的就是不要出现让程序不知道调用哪一个,即歧义,否则,bug自然就出现了!

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值