c++语法之为什么有函数重载,如何使用

落爺英雄遲暮 提交于 2020-03-08 03:00:30

为什么要使用函数重载

先附上我立知的结果
1、减少对用户的复杂性。
2、这样做减少了函数名的数量,避免了名字空间的污染,对于程序的可读性有很大的好处。
重载函数是函数的一种特殊情况,为方便使用,C++允许在同一范围中声明几个功能类似的同名函数,但是这些同名函数的形式参数(指参数的个数、类型或者顺序)必须不同,也就是说用同一个运算符完成不同的运算功能。这就是重载函数。重载函数常用来实现功能类似而所处理的数据类型不同的问题。

作用一:减少对用户的复杂性

这点是很好理解的,为了方便开发,若具有相同功能但针对类型不同的函数过多,就会导致编程人员存在过多的时空花销。但是针对用户,我就也不太清楚了。

作用二

列出一下几个求和函数:

sum(int a,int b) //不写返回类型,返回整型
double sum(double a,double b)
float sum(floata,float b,float c)
针对下面的语句是不同的调用
int x=sum(2,8);
float y=sum(5.6,11.1);
float z=sum(float(x),y,5);
顺带就说下重载函数的要求
当调用到重载函数时,编译器根据实参的类型对应地调用相应的函数。匹配过程按如下步骤进行:
(1)如果有参数严格匹配(参数个数、类型完全一致)的函数,就调用该函数;
(2)参数通过内部类型转换后匹配,调用该函数;
(3)参数通过用户定义的类型转换寻求匹配。
在定义重载函数时必须保证参数个数或类型不同,仅仅返回值类型不同是不行的。

标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!