关于函数重载的理解

函数重载的定义:

        两个以上的函数,具有相同的函数名,但是形参的个数或者类型不同,编译器根据实参和形参的类型及个数的最佳匹配,自动确定调用哪一个函数,这就是函数的重载。

重载函数的形参定义时注意事项:

  1. 个数不同
  2. 类型不同
  3. 不以形参名来区分函数
  4. 不以返回值来区分函数

1,形参个数不同

int add(int x, int y);
int add(int x, int y, int z);

2,形参类型不同

int add(int x, int y);
int add(float x, float y);

3,不能以形参名来区分函数(形参只是可以看作虚拟的,是根据传入值赋值的,不能分辨是哪一个)

int add(int x, int y);
int add(int a, int b);

4,不能以返回值来区分函数(实参传入时,与返回值无关,所以,不能以返回值确定)

int add(int x, int y);
float add(int x, int y);

例题

求两整数和两实数的平方和

(此时可以运用重载,一个定义为整型,一个实数型)

#include<iostream>
using namespace std;

int add(int a, int b)      //整型
{
	return a + b;
}

double add(double a, double b)     //实数型
{
	return a + b;
}

int main()
{
	int m, n;
	cin >> m >> n;
	cout << "m + n = " << add(m, n) << endl;

	double mm, nn;
	cin >> mm >> nn;
	cout << "mm + nn = " << add(mm, nn) << endl;
	system("pause");
}

 

 

 

 

 

 

 

 

 

 

 

  • 1
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大学生毕设

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值