函数的玩法
一、函数默认参数
在C++中,函数的参数列表中的形参是可以有默认值的
语法:
返回值类型 函数名 (参数=默认值){}
示例:
#include<iostream>
using namespace std;
int func(int a,int b,int c=12){
return a+b+c;
}
int main(){
cout<<func(10,30)<<endl;
system("pause");
return 0;
}
重点:
1.函数有默认参数的可以不用给出实参。如果不想形参取默认值,可以通过实参另行给出。
2.如果函数的某个形参已经有了默认参数,那么从这个形参的位置往后,从左到右都要有默认值。
3. 函数的声明和函数的实现中,默认值形参只能在两者之一设置。
二、函数的占位参数
C++中,函数的参数列表里可以有占位参数,用来占位,调用函数时必须填补该位置。
语法:
返回值类型 函数名(数据类型){}
示例:
#include<iostream>
using namespace std;
void func(int a){
cout<<"这里你是天才了!"<<endl;
}
int main(){
func(1);
system("pause");
return 0;
}
补充:占位参数可以有默认值。
三、函数的重载
3.1 函数重载的概述
函数的重载:C++中允许用同一函数名定义多个函数,而这些函数的参数类型和个数可以不同。即对一个函数名重新定义他的作用,使一个函数名可以多用。
作用:函数名可以相同,提高复用性
函数重载需要满足的条件:
1.同一作用域下
2.函数名相同
3.函数参数不同或者参数类型不同或者参数顺序不同
注意:函数的返回值类型不可以作为函数重载的条件
示例:
#include<iostream>
using namespace std;
void func(int a){
cout<<"这里你是整型了!"<<endl;
}
void func(int a){
cout<<"这里你是实型了!"<<endl;
}
int main(){
func(1);
func(0.99)
system("pause");
return 0;
}