函数以及面向对象的思想
来源:互联网 发布:ubuntu 更新内核 编辑:程序博客网 时间:2024/05/29 03:21
一、函数的三要素:
函数名、函数形参、函数返回值
二、写成函数的原因:
1、代码的维护性提高
2、代码的复用性提高
3、叠代开发
三、函数名
1、函数名要体现函数的功能(自注释性)
2、函数名是一个指针常量,保存的是函数存放的地址(入口地址)
四、函数的调用:
1、通过函数名找到函数的入口地址
2、给形参分配内存空间
3、传值:把实参变量对应空间的值传给形参
4、执行函数体中的语句
5、函数返回并释放内存空间
五、如何确定传值还是传址
读(不修改)实参变量对应内存空间的值时,传实参变量名
写(修改)实参变量对应的内存空间的值时,传实参的地址
六、传入参数和传出参数
传出参数:原本没有值,在经过函数调用后,有了值,相当于函数的返回值
传入参数:原本有值,在经过函数调用后,传入进去,给函数使用
七、C语言中哪些点体现了面向对象?
1、宏定义: 我们可以先看一个简单的例子:#define MacroFunction MAX_SIZE 然后在程序里面你调用了大量的MAX_SIZE,但是有一天,你突然发现你要用MAX了,(不过MAX_SIZE又不能不要,很有可能你以后还要调用),这个时候,你就可以#define MacroFunction MAX来达到这样的目的。
2、静态的入口函数,保证函数名相同,利用标志位调用子函数:网卡驱动是和pNA+协议栈互连的,那么如何保证pNA+协议栈和不同的驱动都兼容呢,一个简单的办法就是仅仅使用一个入口函数。通过改变如果函数的参数值,来调用内部的各个函数。这样的做法是可以进化的:如果以后想调用新的函数,增加相应的函数参数值就好。如果我们将网卡驱动和pNA+协议栈看作两个层的话,我们可以发现: 层与层之间的互连接口是很小的(这里是一个入口函数),一般是采用名字解析的办法而不是具体的函数调用(利用FunctionCode调用函数,Nilan仅仅实现名字解析的功能)!
3、CALLBACK函数:如果说静态入口函数实现了一个可管理的宏观的话,CallBack就是实现了一个可进化的微观:它使得一个函数可以在不重新编译的情况下实现功能的添加!
- 函数以及面向对象的思想
- 【Java】面向对象思想以及类与对象的关系
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想~~
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 面向对象的思想
- 剑指offer面试题36:数组中的逆序对
- 设计模式概览
- 使用函数实现两个数的交换;
- 【Android】基础知识(一) --Android Studio使用技巧(4)
- 68.You are managing an Oracle Database 11g database. You want to ensure the recovery of the database
- 函数以及面向对象的思想
- UVA 10870 Recurrences
- MYSQ学习
- 代码大全_第七部分: 软件工艺
- HTML5本地存储之Database Storage篇[2]
- Linux -trap
- 实现一个函数判断year是不是闰年。
- android studio2.1解决Unable to detect adb version, adb output
- QQ空间直播秒开优化实践