第三章 函数 (郑莉版C++程序语言设计学习笔记)

本文是郑莉版C++程序语言设计学习笔记的第三章,详细介绍了函数的定义、调用、内联函数、形参默认值、函数重载以及深入探讨了运行栈和函数调用执行的过程,强调了类型安全在函数声明中的重要性。
摘要由CSDN通过智能技术生成

在面对面向过程的程序设计中,函数是模块划分的基本单位,是对处理问题的抽象
在面向对象的过程中,是对功能呢搞得抽象

3.1函数的定义和使用

主函数是程序执行的开始点。
调用其他函数的函数被称为主调函数。
被其他函数调用的函数被称为被调函数

3.1.1 函数的定义

语法形式
类型说明符 函数名 (含类型说明的形式参数表)
{
语句序列
}
形式参数

type1 name1,type2,name2.。。。,typen namen

main函数的形参是命令行参数,由操作系统进行初始化。

函数在没有调用的时候是静止的,此时的形参只是一个符号,它标志着在这个位置应该出现一个什么类型的数据。当函数被调用的时候,由主调函数实际参数(实参)赋予形参。

3.1.2 函数的调用

函数的调用形式
(略)

  1. 函数调用形式
  2. 嵌套调用
  3. 递归调用(汉诺塔问题)

3.2内联函数

函数调用时可以使用内联函数减少调用的开销。(把代码贴在被调用部分)
内联函数不是在调用时发生控制转移,二十在编译时将函数体嵌入在每一个调用处。节约了参数传递,控制转移等开销。
定义方式
inline 类型说明符 函数名(含类型说明的形参表)
{
语句语序
}
只需加上关键字 inline
inline关键字只是表示一个要求,编译器并不承诺将inline修饰的函数作为内联函数。
在现代编译器中,没有声明为内联函数的函数。通常,应该将简单函数定义为内联函数,结构简单,语句少。如果将复杂函数定义为内联函数,会造成代码膨胀,增大开销,这时编译器会自动将其转换为普通函数来处理。
处理策略有不同编译器不同决定。

3.3带有形参默认值的函数

函数在定义时可以预先声明带有默认的形参值。
调用时如果给出了实参,则使用实参初始换形参,否则,采用预先声明的默认形参值。
例如:

int add(int x = 5, int y =6){
    //声明的形参默认值
		renturn x
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值