内联函数,重载函数,递归函数,函数定义

内联函数:
内联函数的主要作用就是可以节省代码运行的时间,这个时间是指栈空间中给内联函数分配栈帧的时间,因为内联函数是不会在栈空间中分配栈帧的。在普通函数的定义前加上 inline 就是将这个普通函数定义为内联函数。

当编译器遇到哦内联函数时,就会将整个函数的代码插入调用处,就相当于内联函数的函数体在调用处重新写了一遍,以避免函数调用的开销,从而节省时间。但这会使得调用内联函数的程序变得十分臃肿,会消耗调用函数的栈空间。

内联函数的使用场合:
1.内联函数中的代码应该只是很简单,执行很快的几条语句。
2.这个函数的使用频率很高,比如在循环体中被调用 N 次。

重载函数:
重载函数是 C++ 中新增的,在 C 中是不允许的。
重载函数就是和其他函数的函数名相同,但是形参的类型或者个数不同。
在调用函数时,会自动识别数据类型和参数个数相同的函数进行调用,会自动匹配。

注意:使用重载函数时,函数名相同了,但函数的功能不能相同,也不能相差太远,只能功能相近。

递归函数:
递归函数分为两种方式递归:
1.直接递归:在函数内部直接调用自己。
2.函数 a 调用函数 b ,函数 b 调用函数 a -----形成相互调用。

优点:可以将复杂的问题简单化。

缺点:
1.性能极低,实际开发中其实很少使用。
2.调用次数过多会使栈空间崩溃,每调用一次递归函数都会分配一个栈帧。

注意:设计递归函数时一定要确定好结束递归的条件。

函数的定义:
1.先确定好函数的功能,功能一定要明确,且只能有一个功能。

2.确定好函数的参数:
是否需要参数,参数的个数,参数的类型。

3.确定函数的返回值:
是否需要返回值,返回值的类型。

4.确定函数名:
(1)函数名一定要顾名思义。
(2)命名方法与变量名的命名方法相同。
(3)不能与标准库已有的函数名相同(避免冲突)。

5.函数实现:
type functionName ( type str1 , type str2 ) {
函数体…
}

记录一下,以免忘记。

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值