函数重载的作用,最好带个例子 C++中函数重载是什么,能举个例子说明是如何重载的吗

作者&投稿:薄映 (若有异议请与网页底部的电邮联系)
用重载函数实现两个整数和三个整数的排序,按照从小到大的顺序将排序结果输出。
声明函数sort为重载函数,并根据参数个数的不同分别进行定义;
在main中用cin分别输入两个整数和三个整数;
根据参数个数的不同,调用不同的函数,从而实现重载。

#include "iostream"
using namespace std;
void sort(int x,int y);
void sort(int a,int b,int c);
void sort(int x,int y)
{
if(x>y)
cout<<y<<" "<<x<<endl;
else
cout<<x<<" "<<y<<endl;
}
void sort(int a,int b,int c)
{
int t;
if(a>b)
{
t=a;
a=b;
b=t;
}
if(a>c)
{
t=a;
a=c;
c=t;
}
if(b>c)
{
t=b;
b=c;
c=t;
}
cout<<a<<" "<<b<<" "<<c<<" "<<endl;
}
int main()
{
int x,y,a,b,c;
cin>>x>>y>>a>>b>>c;
sort(x,y);
sort(a,b,c);
return 0;
}

这是我的一个作业题
还比如
int squareint(int x) 求整数的二次方
float squareint(float x) 求浮点数的二次方
double squareint(double x) 求双精度型的二次方

至于作用网上可以很容易搜到啊,也可以通过例子得到

函数重载的作用?~

方法重载的主要好处就是,不用为了对不同的参数类型或参数个数,而写多个函数。多个函数用同一个名字,但参数表,即参数的个数或(和)数据类型可以不同,调用的时候,虽然方法名字相同,但根据参数表可以自动调用对应的函数。如果我们使用reflector去查看微软写的.net的基类库的话,我们可以发现他使用很多的方法重载,这样我们在调用的时候,就不需要记那么多的方法名称,而是知道了方法的功能就可以直接的给他传递不同的参数,编译器会明确的知道我们调用了哪一个方法。

函数重载:
C++允许定义多个同名函数,但是参数不能相同,必须满足以下条件之一
1,参数类型不同
2,参数数量不同 比如:
int fun(int,int);int fun(long,int); //类型不同int fun(int); //数量不同这样三个函数实现了重载,编译器会认为是三个不同的函数
PS:返回值类型不同,参数相同,是不能重载的

请教高手C++重载operator的具体用法!
答://重载的作用太大了,,,尤其是在STL 中应用广泛呢,,,简单举个例子。。就说说这个输出运算符重载吧。。。例子如下:include <iostream> include <string> using namespace std;class student { public:string stu_name;int stu_age;int stu_number;public:student(string name,int age,...

C#关于重载的作用
答:呵呵,重载并不是利于程序的可读性 实际上重载是为了应对需求变化 假如一个类在设计的时候被处理成了男士专用的,但后来你的客户说女士也可以用这个类,你如何办?重载啰!!如果客户又说不男不女的也可使用这个类,你又如何办?还是重载啰!!

什么是函数重载?
答:对基类方法的重载是函数重载的另一种特殊形式。在派生类中重新定义此虚函数!方法名称,返回值类型,参数表中的参数个数,类型,顺序都必须和基类中的虚函数完全一致!在派生类中声明对虚方法的重载,要求在声明中加上override关键字,而且不能有new,static或virtual修饰符!例子:void foo(int i);void...

什么叫做方法的重载,高手可以举个例子吗?
答:在Java 中,同一个类中的2个或2个以上的方法可以有同一个名字,只要它们的参数声明不同即可。在这种情况下,该方法就被称为重载(overloaded),这个过程称为方法重载(method overloading)。方法重载是Java 实现多态性的一种方式。举个简单的例子 public class A{ public int method (int i){ /...

java中为什么要用方法重载
答:有不同的参数和不同的定义。调用方法时通过传递给它们的不同参数个数和参数类型 来决定具体使用哪个方法, 这就是多态性。(3) 重载的时候,方法名要一样,但是参数类型和个数不一样,返回值类型可以相同 也可以不相同。无法以返回型别作为重载函数的区分标准。下面是重载的例子:package c04.answ...

c#中如何实现<<操作符重载?作用是什么啊?
答:如果第一个操作数为 int 或 long,则右移位是算术移位(高序空位设置为符号位)。如果第一个操作数为 uint 或 ulong 类型,则右移位是逻辑移位(高位填充 0)。用户定义的类型可重载 >> 运算符;第一个操作数的类型必须为用户定义的类型,第二个操作数的类型必须为 int。有关更多信息,请参见 ...

函数重载的条件
答:函数重载指的是在同一个作用域内,定义多个同名函数,但是这些函数的形参列表必须有所区别。具体来说,函数重载需要满足以下条件:函数名相同 函数参数类型不同或者函数参数个数不同 函数参数类型或者个数的顺序不同 以上条件中,只要有一个条件不满足,就不能实现函数重载。相同的函数名可以有不同的函数...

重载,重写只是多态的体现怎么理解?
答:比如有一只鸟A和小鸟B,A教会了B吃饭和飞翔。对于飞翔,A是这样理解的,无非就是振动翅膀,而B有更深刻的理解,振动翅膀和利用好风。这样就是一个重载。B给飞翔增加了一个参数 对于吃上,A喜欢吃虫子,B喜欢吃草,这就是重写。B重写了吃饭这个方法。而A和B正是多态的一个很好例子,不知道能否理解...

C++中成员函数重载是什么意思?
答:举个例子,比如,我需要个函数。取2个int的最大值。很容易,函数接口应该是 (1) int max(int a, int b);那更进一步,我取3个 int 的最大值呢,接口可以定义为 (2) int max(int a, int b, int c);对比 函数(1), (2), 的名字,是一样的,都叫 max,就只有参数的个数不同。这...

重载和覆写有什么区别?
答:其实很本质的区别就是看函数特征:覆写(Override)的两个函数的函数特征相同,重载(Overload)的两个函数的函数名虽然相同,但函数特征不同。函数特征包括函数名,参数的类型和个数。Override 是在继承的时候,如果你写的函数与要继承的函数函数特征相同,那么,加上这个关键字,在使用这个子类的这个函数...