关于function和task的说明
2024-10-18 18:28:27
1. 关于函数function调用,总结两个要点:
1. 函数调用一般产生一个值,这个值被赋值给某个变量
2. 函数所返回的值只能是一个,不可以是多个,不能像C语言中采用指针的方式返回多个值。因此,如果想产生多个结果则需要采用别的方式,实际上就是任务:
下面给出一段具体的代码(虽然很简单),体会函数的作用:
图1 函数调用图
这个函数的功能是完成了输入的三位二进制数的阶乘和,比如输入6,则完成1!+2!+3!+4!+5!+6!,。而sum_factorial(in)中的in就是要求的最大阶乘值,比如这里的6,sum_factorial则是函数名,通过函数可以发现,最终的结果实际上付给了函数名,即一般使用时,认为函数名就是函数的输出,因此有必要对函数名的数据格式进行声明,使得它能够和被赋值的变量的类型格式一致,比如这里的out。在这里,我们发现,函数的作用,突出产生了一个值,即我们要产生一个值,然后赋给一个变量。这里也体现了函数也是为了完成一个功能,但他强调这个功能的单值结果是什么。并且我们需要这个结果去干别的事情,即被赋值。并且,函数只能返回一个值!!!
2.关于任务的调用总结如下:
2.1 任务的调用强调完成一个功能,并不产生赋值作用
2.2 任务调用可以产生多个结果(类似于C语言中函数中的指针)
下面举例说明任务:
图2 任务调用图
从图中可以看出,任务完成了两个数交换的功能,而且并不赋值;说明了任务核心在于完成功能;在此需要这里这里的一个细节。任务中的x,y变量被定义成了inout双向形式的变量,这是因为,x,y实际上是相当于形参,最终还要将计算的结果返回去,送出去。即任务就像,送进来东西,经过加工,再送回去。
最新文章
- 纯CSS照片墙
- poj2488骑士马走
- CF 500D New Year Santa Network tree 期望 好题
- 传统IT大佬们,路在何方?
- Ios17个常用代码整理
- 排序功能实现 jQuery实现排序 上移 下移
- rhel Linux系统yum的配置
- Android应用截图嵌入到真实设备
- hdu_5324_Boring Class(cdq分治+树状数组)
- Vijos P1784 数字统计【模拟】
- C#默认参数原理探究
- [转]Rancher 快速上手指南操作(1)
- Tencent Cloud Developers Conference(2018.12.15)
- Xcode10.1 import头文件无法索引
- C++11 类型推导decltype
- python第七课——循环结构 while
- SGU 140. Integer Sequences 线性同余,数论 难度:2
- ubuntu 安装 zend studio
- 前端之body标签中相关标签(二)
- sql语句-8-sql学习流程
热门文章
- ajax调用WebService实现数据库操作
- AI学习---分类算法[K-近邻 + 朴素贝叶斯 + 决策树 + 随机森林 ]
- 修改Windows默认远程端口号
- 怎么将后缀为.opt,.frm,.myd,.myi文件还原或者是导入mySQL中
- Java学习笔记--Cglib动态代理
- Word中的通配符随意组合进行批量替换或删除某些内容
- 部署与管理ZooKeeper(版本有点老,3.4.3)
- Caused by: java.io.FileNotFoundException: velocity.log (No such file or directory)
- (转)Spring Boot(二):Web 综合开发
- python六十七课——网络编程(基础知识了解)