语言的学习(7)--函数
来源:互联网 发布:短信群发系统源码 编辑:程序博客网 时间:2024/05/17 18:49
如果认为数据+操作就是程序的话(当然这里是命
令式的程序)
那么程序设计语言就可以分成两个分支来看
一个是数据分支
一个是操作分支
不同时代的程序设计语言分别沿着这两个方向进行
着不同程度的抽象到目前已经有的抽象分类来说有
数据抽象
类型抽象:现在一般高级语言都有类型系
统。
复合抽象:一般高级语言保留了一些构造
变量类型 如数组,枚举等
类/对象抽象:这个是在将数据,与数据相
关的操作以及 继承性共享,多态性操作集
合起来做抽象。
操作抽象
函数抽象:也可以称之为表达式抽象。这个
抽象主要是对子过程的抽象。
对于抽象有两个方面:
一 由于高级语言在应付程序设计方面的需
求而促使高级语言设计出更高级别的抽象来
满足程序设计的需求
二 在于实现这些抽象的代价越来越小和设
计的越来越合理。
这里讨论的是C++ 中的函数。
由于可以这么认为函数是操作抽象的表现之一。而
操作在C++中最基本手段是表达式如同数据的最基本
手段是基本类型变量似的。所以函数中的有些形式有些
像表达式形式。
这里先归纳一下C++中函数概念 然后从表达式的角度
来分析。
函数定义: C++ 定义包括三个方面 返回类型 函数
名 函数参数
一 函数说明: 函数在定义前调用函数需要说明,这个
主要是C++编译器没有向前看的原因(why)
二 函数调用: 函数调用可以使用三种方式传递参数,
传值,传址,引用。
三 函数的调用的特点:参数表达式的计算顺序,参数
的个数,参数默认值,如何传递数组(按数组名 指
针 自定义类型--可以使用引用)
四 内联函数:类似于宏定义中函数。但不能包含循环和
开关函数。常用于类的内部函数。
五 函数重载:这个后面讨论主要设计的类型继续参数
个数继续
六 函数的嵌套和递归调用
从表达式的角度来看函数:
一 表达式内容包括三个部分
计算值 计算结果类型 操作数
二 表达式副作用和无副作用表达式
就表达式而言函数相同点
一 函数的返回值和返回类型类似于表达式
的计算值和计算类型
二 表达式可以使有副作用的和无副作
用的,函数也可以是在操作数上分传值和传
地址和引用型的实现有副作用的。
就表达式而言函数的不同点:
一 函数实现了多个操作包括控制流的封装
二 实现了函数内变量对外的封装,和函数
内变量对内的共享
三 实现了计算返回和操作数类型的检验
以上就操作的抽象之一的函数子程序的封装。
- 语言的学习(7)--函数
- C语言函数的学习
- C语言函数的学习
- 《Javascript语言精粹》的学习(一).对象和函数
- C语言学习总结(1)-递归函数的理解
- C语言的学习笔记2-函数
- C++语言 构造函数 的学习
- C语言学习记录(七):C语言的核心——函数
- ios开发-c语言之C语言函数的学习
- R语言与函数估计学习笔记(函数模型的参数估计)
- C语言学习笔记(九)--函数
- Go语言学习笔记 -- 函数(1)
- Go语言学习笔记 -- 函数(2)
- Go语言学习笔记(四)函数
- C语言基础知识学习(函数)
- C语言函数学习
- 学习Python语言---函数
- C语言学习-函数
- 对嵌入式系统的理解
- javascript 关于表单的一些validation
- hhnos-HouseHold Network Operation System
- 泛泛的,java泛型是什么,
- 上海人其实没有一般传说的那么坏 【看看这篇上海人的真实写照】
- 语言的学习(7)--函数
- PHP Knowledge 3
- ASP函数大全
- PHP Knowledge 4
- HelloWorld常见问题(Java初学)
- PL-SQL Syntaxes-Examples_Part2.txt
- asp正确显示日期代码
- PHP Knowledge 5
- 必须学会的几个网络测试命令