C++函数四( 具有默认参数值的函数)

C++语言中,可以设置函数形参的默认值,在调用函数时,若明确给出了实参的值,则使用相应实参的值;若没有给出相应实参的值,则使用默认的值。这将为函数调用带来方便和灵活。

【示例】

#include<iostream>
using namespace std;
int max(int x = 70, int y = 60, int z = 50) {
    int m;
    if (x > y) m = x;
    else m = y;
    if (z > m) m = z;
    return m;
}
int main() {
    int s1, s2, s3;
    s1 = max(10, 20, 30);
    cout << "s1=" << s1 << endl;
    s2 = max(10, 20);
    cout << "s2=" << s2 << endl;
    s3 = max();
    cout << "s3=" << s3 << endl;
    system("pause");
    return 0;
}

 使用默认参数的函数的注意事项
(1)如果程序中既有函数的声明又有函数的定义,则定义函数时不允许再定义参数的默认值。如果程序中只有函数的定义,而没有函数的声明,则默认参数才可出现在函数定义中

(2)默认参数的顺序:具有默认值的参数必须位于参数表的最右边如果一个函数中有多个默认参数,则形参分布中,默认参数应从右至左依次定义。
例如:
 void try(int j=3, int k)/非法
 void try(int j, int k=2, int m)/非法

 void try(int j, int k=2)/合法
 void try(int j, int k=2, int m=4)/合法
 void try(int j=3, int k=2, int m=4)/合法

原文地址:https://www.cnblogs.com/CX66/p/13921849.html