C++默认参数、函数重载、内联函数

默认参数:

在C++中,函数在定义或声明时,给参数设定默认值,该默认值在函数具体调用的过程中如果实参空缺,即启用默认值,完成函数运算

默认值设置规则:

1. 有声明有定义默认值设置在声明(只写一次)程序至上向下运行,函数声明处于定义上方,最先运行,默认值设定一次,避免重复设置

2. 仅有函数定义默认值设置在定义无函数声明,便无需担心重复设置默认值

3. 函数中默认值从右至左设置函数调用中,实参从左到右顺序调用,默认值为实参空缺时填补,则最先填补右边的空缺,所以默认值由右至左设置,假设最先设置默认值在左边,当函数实参调用时则最先覆盖左侧默认值,当实参空缺时,默认值未起到填补的作用,函数依然无法运行

函数重载:

函数重载(函数多态),多同名函数的使用

重载要求:

函数的参数列表(特征标)不同:包含参数数目不同,参数类型不同

错误重载:

int add(int x,int y);
double add(int x,int y);

1. 运用函数返回值错误区分重载函数:

函数调用时,无法因返回值的不同选择重载函数

2. 引用参数错误区分重载函数:

int add(int x,int y);
int add(int& x,int& y);

参数的引用实际上和实参类型一致,类型引用和类型本身视为同一个参数,无法区分重载函数

实质:

函数重载实质上是C++在行过程中,将函数名、参数类型、返回值的信息转译为另一暗语标记,遇到同名的函数时,因参数列表不同而产生暗语标记不同进行区分,在函数调用时,根据调用的实参类型、个数,程序自动选择最佳匹配函数运行(参数类型及数量一致、const限定,*除了引用以外的所有区别*)。

函数匹配选择:

有const选有const参数的函数,没有const选没有const参数的函数

内联函数

C++将程序中功能简单、规模小、使用频繁的函数,将其设置为内联函数,即如果运行到内联函数时,不再系统调用函数,而是直接在函数定义处用内联函数程序代码替换对它的调用。

内联函数格式:

函数声明或定义时,将 inline 关键字加在函数的返回类型前面

eg:inline int add(int a,int b);

引用场景:

  1. 类内函数,自动设置为内联函数,相反类外为普通函数;
  2. 功能简单、规模小、使用频繁的函数

如若将功能复杂,规模大的函数设置成内联函数,亦会失败,用户设置内联函数是建议设置,真正实施的是系统的选择

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值