1.函数默认参数
(1).函数参数是可以有默认值的,如果某一个参数有默认值,那么从这个参数之后,从左到右,都必须有默认值。
(2).函数声明参数有默认值,函数实现中不能有默认值。
#include<iostream>
using namespace std;
int add(int a,int b=10,int c=20){return a+b+c;
}
int add1(int a=1,int b=2);
int add1(int a,int b){return a+b;
}
int main(){cout<<add(100)<<endl;cout<<add1(100,200)<<endl;return 0;
}
2.函数占位参数
cpp形参列表可以有占位参数,用来啄占位,调用函数时必须填补此占位。
//函数占位参数 ,占位参数也可以有默认参数
void func(int a, int) {cout << "this is func" << endl;
}int main() {func(10,10); //占位参数必须填补system("pause");return 0;
}
3.函数重载
函数名相同,函数参数个数、顺序、类型可以不同,返回值也可以不一样,提高复用性。
注意: 函数的返回值不可以作为函数重载的条件
#include<iostream>
using namespace std;void add(int a){cout<<"add(int a,int)"<<endl;}
int add(int a,int b){cout<<"add(int a,int b)"<<endl;return a+b;
}
int add(int a,int b,int c){return a+b+c;
}
int main(){add(10,20);return 0;
}