首页 > 文章列表 > C++ 函数中默认参数的注意事项

C++ 函数中默认参数的注意事项

函数 默认参数 c++
462 2024-04-23

C++ 函数中默认参数需要注意:必须出现在参数列表末尾。不可为同一参数指定多个默认值。vararg 可变数量参数不可拥有默认值。默认参数不可被重载函数的参数共享。

C++ 函数中默认参数的注意事项

C++ 函数中默认参数的注意事项

简介

默认参数允许您在调用函数时省略某些参数。通过提供一个默认值,您可以在函数定义中指定参数的默认行为。

语法

要声明带默认参数的函数,请按照以下语法:

返回值类型 函数名称(参数1, 参数2 = 默认值, ...)
{
    // 函数体
}

注意事项

使用默认参数时,需要注意以下几点:

  • 默认参数必须出现在参数列表的末尾。
  • 不能为同一参数指定多个默认值。
  • 被称为 vararg 的可变数量参数不能具有默认值。
  • 默认参数不能被重载函数的参数共享。

实战案例

以下示例展示了如何在 C++ 函数中使用默认参数:

#include <iostream>

using namespace std;

// 计算圆的面积,圆心默认为 (0, 0)
double circleArea(double radius, double x = 0, double y = 0)
{
    return 3.14 * radius * radius;
}

int main()
{
    // 使用默认圆心计算面积
    double area1 = circleArea(5.0);
    cout << "Area with default center: " << area1 << endl;

    // 使用自定义圆心计算面积
    double area2 = circleArea(5.0, 2.0, 3.0);
    cout << "Area with custom center: " << area2 << endl;

    return 0;
}

输出:

Area with default center: 78.5
Area with custom center: 78.5

在示例中,circleArea 函数具有三个参数:radiusxyxy 参数具有默认值 0,这意味着如果在函数调用中省略这些参数,将使用 0

我们分别使用了带有和不带有自定义圆心的函数,并打印了面积。正如您所看到的,使用默认参数可以简化函数调用而不会损害灵活性。