函数重载
概念
函数重载条件:
- 函数同名;
- 参数列表(参数的个数、类型)不同。
对返回值类型、形参名字没有要求。满足上述条件的函数之间构成函数重载。
// 个数不同
void Func();
void Func(int a);
void Func(int a, int b);
// 类型不同
void Func(int a, int b);
void Func(double a, double b);
void Func(int a, double b);
void Func(double a, int b);
使用场景
#include <iostream>
using namespace std;
void Add(int x, int y)
{
cout << x + y << endl;
}
void Add(double x, double y)
{
cout << x + y << endl;
}
int main()
{
Add(1, 2); // 3
Add(1.1, 2.2); // 3.3
Add(1, 2.2) // 错误,因为int和double可以互相转换,发生歧义,不知道进入哪个函数
return 0;
}