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;
}