作用:
函数名相同,提高复用性
函数重载满足条件:
- 必须在同一作用域下
- 必须函数名相同
- 函数参数类型不同或者个数不同或者顺序不同
注意:
返回值类型不同不能作为重载的条件
避免函数重载时加默认参数,否则容易出现二义性
#include <iostream>
void func()
{
std::cout << "func() 被调用" << std::endl;
}
void func(int a)
{
std::cout << "func(int a) 被调用" << std::endl;
}
void func(double a)
{
std::cout << "func(double a) 被调用" << std::endl;
}
void func(int a, double b)
{
std::cout << "func(int a, double b) 被调用" << std::endl;
}
void func(double a, int b)
{
std::cout << "func(double a, int b) 被调用" << std::endl;
}
int main()
{
func();
func(1);
func(1.8);
func(1, 1.8);
func(1.8, 1);
system("pause");
return 0;
}