我们主要探讨一下两个问题:
(1)什么是函数重载?
(2)为什么要有函数重载?
问题一回答:函数重载指的是,在同一作用域内,可以有一组具有相同的函数名,不同的参数列表(类型或者个数),返回类型任意,这组函数称为重载函数。
问题二回答:当在不同的场合使用相同的功能时,使用函数重载,可以增强程序的灵活性、可读性和扩展性。
关于问题二,举个例子:
计算两个整型数字的和:
int Add(int x, int y)
{
return x+y;
}
这个函数只能实现两个整型之间的运算,当需求改为两个double类型的数据计算时,我们只要做一下改变即可:
double Add(double x, double y)
{
return x+y;
}
当然,这个在C语言中不支持,C语言中只能改为:实现两个数整型加法函数:Add_int;实现两个浮点数加法函数:Add_double;显然可读性不强。综上所述,在不同场景下使用相同功能,建议使用函数重载。