《C++ Primer 第5版》第6章 函数 笔记

视频推荐:阿西拜编程 - 明解 C++ Primer

导图 - 第6章 函数

在这里插入图片描述


6.1 函数基础

在这里插入图片描述

6.1.1 局部对象

在这里插入图片描述

问charGPT:为什么每次函数调用 static size_t ctr = 0; ctr不会被这条语句重新赋值为0?

当函数中的变量被标记为static时,它的生命周期会持续到程序的结束,而不是像普通局部变量那样在每次函数调用时重新初始化。在这段代码中,static size_t ctr = 0;语句只会在第一次调用count_calls函数时执行,并将ctr初始化为0。之后的每次函数调用,ctr的值将会被保留,不会重新赋值为0

书上对 局部静态对象 和 这段代码 的解释

在这里插入图片描述

在这里插入图片描述

其实还是没太懂

6.1.2 函数声明

有时候经常会把函数的定义和声明分开

  • 可以声明在main函数之前,定义在之后(main始终在比较上面的位置,代码比较整洁)
  • 或者可以把声明放在头文件中,把定义放在另一个cpp文件中

声明时形参名可以省略

6.1.3 分离式编译

可按照逻辑关系来将不同函数划分到不同的源文件中去,每个文件可以独立编译

在这里插入图片描述

现在都用IDE(如vs2019等),虽然看不到这样一个过程,但也要大概知道


6.2 参数传递

6.2.1 传值参数

6.2.2 传引用参数

6.2.3 const 形参和实参

6.2.4 数组形参

6.2.5 main:处理命令行选项

6.2.6 含有可变形参的函数


6.3 返回类型和 return 语句

6.3.1 无返回值函数

6.3.2 有返回值函数

6.3.3 返回数组指针


6.4 函数重载

6.4.1 重载与作用域


6.5 特殊用途语言特性

6.5.1 默认实参

6.5.2 内联函数和 constexpr 函数

6.5.3 调试帮助


6.6 函数匹配

6.6.1 实参类型转换


6.7 函数指针

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值