C++学习总结——C++ 函数名重载(8)

函数名重载:给多个不同的函数(参数的类型或个数有所不同)取相同的名字

注:如果两个函数的参数类型和个数都相同,知识他们的返回值类型不同,不能对其进行函数名重载,因为函数调用时不能区分调用的是哪个函数。

        (和函数名重载没有太大关系:函数名可转换成函数函数指针)

重载函数的绑定

1. 精确匹配

    萝卜放进萝卜筐,白菜放进白菜筐

2. 提升匹配

    精确匹配不到就进行提升匹配

    1)按整型提升规则

    2)把float提升到double,把double提升到long double

3. 标准转换匹配

    提升匹配不到就进行标准转换匹配

    标准转换规则:

    1)任何算术类型可以互相转换

    2)枚举类型可以转换成任何算术类型

    3)零可以转换成任何算术类型或指针类型

    4)任何类型的指针可以转换成void *

    5)派生类指针可以转换成基类指针

    6)每个标准转换都是平等的(也就是1到5的优先级相同)

4. 自定义转换匹配

    1)强制类型转换

    2)增加额外的重载


对于含有两个或两个以上参数的重载函数绑定问题,原则是先绑定最佳匹配(也就是参数对应个数越多)。
 

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小小y979

你的鼓励将是我创作的动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值