在C++中,函数重载(Function Overloading)是一种特性,它允许定义具有相同名称但具有不同参数列表的多个函数。这些函数可以在名称相同的情况下执行不同的操作,具体取决于传递给它们的参数。函数重载提高了代码的可读性和可维护性。
函数重载的规则如下:
- 函数名称必须相同。
- 函数参数列表必须不同,要么是参数数量不同,要么是参数类型不同,或者两者都不同。
- 返回类型可以相同也可以不同。
以下是函数重载的示例:
#include <iostream>
// 函数重载示例
int add(int a, int b) {
return a + b;
}
double add(double a, double b) {
return a + b;
}
int add(int a, int b, int c) {
return a + b + c;
}
int main() {
int sum1 = add(2, 3);
double sum2 = add(2.5, 3.7);
int sum3 = add(1, 2, 3);
std::cout << "Sum1: " << sum1 << std::endl;
std::cout << "Sum2: " << sum2 << std::endl;
std::cout << "Sum3: " << sum3 << std::endl;
return 0;
}
在上面的示例中,我们定义了三个名为 add
的函数,每个函数具有不同的参数列表。根据传递给 add
函数的参数的类型和数量,编译器会自动选择调用适当的函数。这使得我们能够使用相同的函数名 add
来执行不同的操作,根据需要进行函数重载。函数重载通常用于实现相似但参数不同的操作,以提高代码的可重用性和可读性。