C++函数的默认参数是指在函数声明中为某个参数提供一个默认值,如果调用该函数时没有提供该参数的值,则使用默认值。
默认参数的语法如下:
return_type function_name(parameter_type parameter_name = default_value);
示例:
// 函数声明
void showMessage(int count = 1, const char* message = "Hello");
// 函数定义
void showMessage(int count, const char* message) { for (int i = 0; i < count; i++) { std::cout << message << std::endl; } }
// 调用函数
showMessage(); // 使用默认参数调用函数,输出 "Hello"
showMessage(3); // 指定 count 参数,输出 "Hello" 三次
showMessage(2, "Goodbye"); // 指定 count 和 message 参数,输出 "Goodbye" 两次
注意事项:
- 默认参数只能从函数声明开始提供,不能在函数定义时提供。
- 如果某个参数有默认值,则其后的所有参数都必须有默认值。如果想为其中的某个参数提供默认值,但是前面的参数不提供默认值,可以在函数声明中省略参数名。
示例:
// 正确的默认参数使用方式
void sum(int a, int b = 0, int c = 0);
// 错误的默认参数使用方式
void sum(int a = 0, int b, int c);
- 当调用函数时,可以省略拥有默认参数的参数,此时默认值将被使用。如果想为后面的参数指定值,可以通过参数名来指定。
示例:
void printMessage(int a = 0, int b = 0, int c = 0);
printMessage(); // 输出:0 0 0
printMessage(1); // 输出:1 0 0
printMessage(1, 2); // 输出:1 2 0
printMessage(1, 2, 3); // 输出:1 2 3
printMessage(b = 5, a = 3); // 输出:3 5 0

被折叠的 条评论
为什么被折叠?



