📅  最后修改于: 2023-12-03 15:13:45.009000             🧑  作者: Mango
函数重载和默认参数是 C ++ 中的重要特性。函数重载允许我们定义多个函数具有相同的名称但不同的参数列表。默认参数允许我们定义函数的参数具有默认的值,如果调用函数时没有提供参数,则使用默认参数。
函数重载的概念是定义多个具有相同名称但参数列表不同的函数。例如:
int add(int num1, int num2);
float add(float num1, float num2);
这里我们定义了两个名为“add”的函数,它们具有不同的参数类型。当我们调用“add”函数时,编译器会根据参数类型选择正确的函数。
函数重载的规则如下:
默认参数是在定义函数时为参数指定默认值,如果调用函数时没有提供参数,则使用默认参数。例如:
int add(int num1, int num2 = 3);
这里我们为“num2”指定了默认值“3”。调用“add”函数时,如果只提供一个参数,则“num2”将使用默认值。
默认参数的规则如下:
让我们看一个示例,演示如何定义和使用函数重载和默认参数。
#include <iostream>
using namespace std;
int add(int num1, int num2);
float add(float num1, float num2);
int add(int num1, int num2, int num3 = 0);
int main() {
int result1 = add(1, 2);
float result2 = add(1.5, 2.5);
int result3 = add(1, 2, 3);
cout << "Result 1: " << result1 << endl;
cout << "Result 2: " << result2 << endl;
cout << "Result 3: " << result3 << endl;
return 0;
}
int add(int num1, int num2) {
return num1 + num2;
}
float add(float num1, float num2) {
return num1 + num2;
}
int add(int num1, int num2, int num3) {
return num1 + num2 + num3;
}
在上面的示例中,我们定义了三个名为“add”的函数。第一个接受两个整数作为参数,并返回它们的总和。第二个接受两个浮点数作为参数,并返回它们的总和。第三个接受三个整数作为参数,并返回它们的总和。第三个函数定义中,“num3”的默认值为“0”。
在“main”函数中,我们使用这些函数来计算两个整数、两个浮点数和三个整数的总和。请注意,在调用第三个函数时,我们只提供了前两个参数,因为第三个参数有一个默认值。
输出:
Result 1: 3
Result 2: 4
Result 3: 6
函数重载和默认参数是 C ++ 中强大和有用的特性。它们允许我们编写更灵活的代码,并使我们的代码更易于阅读和理解。对于需要多个版本的相同函数的情况(例如,一个函数用于加法,另一个用于字符串连接),函数重载是必不可少的。对于某些参数在大多数情况下都有相同值的函数,使用默认参数可以简化代码,并使函数的调用更具可读性。