(18)--6.1静态多态性之函数重载.ppt

上传人:奉*** 文档编号:96638569 上传时间:2024-02-01 格式:PPT 页数:11 大小:75.29KB
返回 下载 相关 举报
(18)--6.1静态多态性之函数重载.ppt_第1页
第1页 / 共11页
(18)--6.1静态多态性之函数重载.ppt_第2页
第2页 / 共11页
点击查看更多>>
资源描述

《(18)--6.1静态多态性之函数重载.ppt》由会员分享,可在线阅读,更多相关《(18)--6.1静态多态性之函数重载.ppt(11页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。

1、什么是多什么是多态性性 通俗理解:通俗理解:一个事物表现出多种形态例如:校长发布开学消息、上课打铃等 面向对象中的多态性:面向对象中的多态性:向不同的对象发送同一个消息,不同的对象在接收时会产生不同的行为(即方法)例如:函数重载、运算符重载 具体表现形式:具体表现形式:具有不同功能的函数使用同一个函数名,从而实现同一个函数名调用不同内容的函数。什么是多什么是多态性性 分类:分类:静态多态性(编译时多态性):程序编译时就能确定要调用哪个函数实现方式:函数重载特点:调用速度快、效率高,但缺乏灵活性动态多态性(运行时多态性):程序运行过程中才动态地确定操作所针对的对象实现方式:虚函数静静态多多态性之

2、函数重性之函数重载 问题的提出:问题的提出:如何通过函数,找出三个数中的最大数?要求能够处理不同数据类型的最大值求解。缺点:函数调用不方便 思考:思考:能否不用3个函数名而用一个统一的函数名呢?答案:函数重载int max1(int a,int b,int c);/求求3个整数中的最大数个整数中的最大数double max2(double a,double b,double c);/求求3个双精度数中的最大数个双精度数中的最大数longmax3(long a,long b,long c);/求求3个个长整数中的最大数整数中的最大数静静态多多态性之函数重性之函数重载 定义:定义:允许用同一函数名

3、定义多个函数,而这些函数的参数个数和参数类型可以不相同静态多态性!程序程序实例例参数参数类型不同的函数重型不同的函数重载#include using namespace std;int max(int a,int b,int c)/定定义求求3个整数中的最大数的函数个整数中的最大数的函数if(ba)a=b;if(ca)a=c;return a;double max(double a,double b,double c)/定定义求求3个双精度数中的最大数的函数个双精度数中的最大数的函数if(ba)a=b;if(ca)a=c;return a;long max(long a,long b,long

4、 c)/定定义求求3个个长整数中的最大数的函数整数中的最大数的函数if(ba)a=b;if(ca)a=c;return a;程序程序实例例参数参数类型不同的函数重型不同的函数重载int main()int i1,i2,i3,i;cini1i2i3;/输入入3个整数个整数i=max(i1,i2,i3);/求求3个整数中的最大数个整数中的最大数couti_max=id1d2d3;/输入入3个双精度数个双精度数d=max(d1,d2,d3);/求求3个双精度数中的最大数个双精度数中的最大数coutd_max=dg1g2g3;/输入入3个个长整数整数g=max(g1,g2,g3);/求求3个个长整数中

5、的最大数整数中的最大数coutg_max=gendl;程序程序实例例参数个数不同的函数重参数个数不同的函数重载#include using namespace std;int max(int a,int b,int c)/此此max函数的作用是求函数的作用是求3个整数中的最大数个整数中的最大数 if(ba)a=b;if(ca)a=c;return a;int max(int a,int b)/此此max函数的作用是求两个整数中的最大数函数的作用是求两个整数中的最大数 if(ab)return a;else return b;程序程序实例例参数个数不同的函数重参数个数不同的函数重载int mai

6、n()int a=8,b=-12,c=27;coutmax(a,b,c)=max(a,b,c)endl;/输出出3个整数中的最大数个整数中的最大数coutmax(a,b)=max(a,b)endl;/输出两个整数中的最大数出两个整数中的最大数程序运行程序运行结果果:max(a,b,c)=27max(a,b)=8静静态多多态性之函数重性之函数重载 注意:注意:不能只有函数的类型不同而参数的个数和类型相同例如:以下重载方式出错int f(int);/函数返回值为整型long f(int);/函数返回值为长整型void f(int);/函数无返回值原因:同一调用形式 f(10)同名函数的功能应当相同或相近小小结多态性的含义1多态性的分类2静态多态性之函数重载3

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 教育专区 > 大学资料

本站为文档C TO C交易模式,本站只提供存储空间、用户上传的文档直接被用户下载,本站只是中间服务平台,本站所有文档下载所得的收益归上传人(含作者)所有。本站仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。若文档所含内容侵犯了您的版权或隐私,请立即通知淘文阁网,我们立即给予删除!客服QQ:136780468 微信:18945177775 电话:18904686070

工信部备案号:黑ICP备15003705号© 2020-2023 www.taowenge.com 淘文阁