最简单易懂的C++教程 Day 6

Posted 西京数据分析与商业智能

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了最简单易懂的C++教程 Day 6相关的知识,希望对你有一定的参考价值。



知识回顾与开始




‍‍‍‍     昨天我们把语句后部分,条件和循环语句学习

语句99%的内容基本就全说完了,还有break

句和continue语句不过由于跟C语言基本一致就

下(goto语句现在基本不用也就不提了):


①break语句用于结束最近的while,do  while,for

或switch语句,并将程序的执行权传递给终止语

之后的语句。

②continue语句导致最近的循环语句的当代迭代提

结束,其仅能使用在while,do  while或for语句,

包括嵌套在这些循环内部的块语句。


     那么语句的学习我们就告一段落,让我们继续

开启新的内容——“函数”(function)的学习吧。

函数的学习将具体围绕函数的定义和声明,如何给

函数传递参数以及如何从函数返回值,三类特殊的

函数等问题展开。与语句讲法一致,计划分为上下

两次讲解,有关三类特殊的函数:内联函数,类成

员函数和重载函数将放到下一次讲述。


函数(上)


_

众所周知,C++是C语言的扩展,要说C++和C语言的细致区别,其实在学习函数时就可以窥见一斑,C++函数在兼容C函数定义时也做出了一些改进。一方面C++函数中允许使用缺省参数值,占位参数;另一方面C++提供了重要的函数重载机制;另外,还了解决C中的宏缺陷问题提供了内联函数的机制,并且之后从C++函数定义支持后置返回类型。

1、函数的组成,分类,定义与声明‍

①函数的组成:

函数又由函数名,参数值,函数体,返回值组成,函数名可以对函数进行调用。参数值在编程中一般情况下会作为输入值使用(可以有多个,且注意要写明参数的类型)。函数体经过一系列运算得到返回值。返回值类型是返回值的数据类型,在函数定义时需要写明。

②函数的分类:

从使用角度看:系统函数(库函数)和自定义的函数两类。

从函数形式看:无参函数和有参函数两类。

③函数的定义与声明:

函数是面向对象程序设计中对功能的抽象;函数定义是函数功能的确定函数声明是函数原型;定义建立存储空间而声明不建立存储空间;使用函数声明:先声明再调用最后定义函数。


2、函数的参数
①形参与实参:
      参数主要用于数据的传递。在定义函数中的参数称为形参,主函数调用一个函数时函数括号里的参数被称为实参,实参可以是变量,常量或表达式。所以定义函数时,必须指定形参的类型且实参类型必须与实参类型相同。
   形参在未出现函数调用时不会占用存储空间,被称为虚拟参数,表示它并不是实际存在的数据。在函数发生调用时,编译系统会临时开辟空间,形参才被分配内存单元,以便接收从实参传递的数据。调用结束后,形参内存单元会被释放。
②参数的传递与调用:


语法:

类型标识符被调用函数名 (含类型说明的形参列表);

每次调用函数时,都会重新创建该函数所有的形参,此时所传递的实参将会初始化对应的形参。形参的初始化与变量的初始化一样,如果形参具有非引用类型,则复制实参的值,如果形参为引用类型,则它只是实参的别名。

且需注意,若函数定义在调用点之前,无需另外声明;若函数定义在调用点之后,则需要在调用函数前声明。

下面我们举一个递归调用典型例子求解斐波那契数列来理解参数的传递:

最简单易懂的C++教程 Day 6

(仅列出前20项示意)

2、函数的返回类型

函数的返回类型可以是内置类型(int或double)类类型或复合类型还可以是void类型,表示该函数不返回任何值,另外还有一说,函数不能返回另一个函数或这是内置函数类型,但可以返回指向函数的指针或指向数组元素的指针的指针(此处暂时就不细讲展开了,理解意思即可)。最后一定注意:函数必须指定返回类型,在定义和声明函数时,没有显示指定返回类型是不合法的!

下面我们举一个“判断最大值的函数,输入num1和num2判断他们之间较大的值”的例子来说明和理解刚才全部讲述的内容。‍


以上是关于最简单易懂的C++教程 Day 6的主要内容,如果未能解决你的问题,请参考以下文章

最简单易懂的SpringCloudSleuth教程

C++ 随机化快速排序 最简单易懂的代码! 基于归并分区思想实现

递归回溯最简单易懂的小例子

史上最通俗易懂的Python入门教程,漫画图文生动有趣,一看就会

最简单的 UE 4 C++ 教程 —— 寻找玩家的当前位置

史上最浅显易懂的RxJava入门教程