函数重载及带默认参数的函数
函数重载
函数重载(function overload),是函数的一种特殊情况,也是C++当中一种重要函数形式,其表现形式为,函数名相同,但是参数个数或参数顺序或参数类型不相同,其每个函数完成不同的功能。
条件:函数名相同,参数个数或参数顺序或参数类型不相同(三点可以同时具备)。
使用方法:实参类型要与函数形参匹配
下面举个简单地例子
1 //函数重载
2 #include <iostream>
3 using namespace std;
4
5 void fun(int a,int b){
6 cout<<a<<endl;
7 }
8 void fun(int a,int b,int c){
9 cout<<c<<endl;
10 }
11 void fun(char a,char b){
12 cout<<b<<endl;
13 }
14
15 void test(){
16 fun(3,4);
17 fun('E','F');
18 fun(2,5,7);
19 }
20 int main(){
21 test();
22 return 0;
23 }
函数重载使程序更加细节,掌握函数重载会使你的程序更加精致及可观性
带默认参数的函数
我们所说的参数分为两种,形参和实参,这里的带默认参数的函数中的参数实际上是实参。
形如:
1 void func(int a = 1,int b = 3,int c = 5){
2 cout<<a+b+c<<endl;
3 }
如上方代码所示,将形参设定默认值,这就是带默认参数的函数
带默认参数的函数有以下几种特点,下面我来一一说明。
1.调用函数 func() ,如果不指定实参值,则程序使用形参的值执行代码
1 void func(int a = 1,int b = 3,int c = 5){
2 cout<<a+b+c<<endl;
3 }
4 int main(){
5 func(); //输出1+3+5
6 func(2); //输出2+3+5
7 func(2,4); //输出2+4+5
8 func(4,7,8); //输出4+7+8
9
10 return 0;
11 }
2.若函数在声明当中指定了默认形参,则函数定义的形参可不比再设置默认参数,如下:
1 void func(int a = 1,int b = 3,int c = 5)
2 int main(){
3 func(); //输出1+3+5
4 func(2); //输出2+3+5
5 func(2,4); //输出2+4+5
6 func(4,7,8); //输出4+7+8
7
8 return 0;
9 }
10 void func(int a,int b,int c){
11 cout<<a+b+c<<endl;
12 }
3.在设置默认形参的时候,应该遵循靠右原则,即应该从右往左设置形参,如下:
1 void func(int x = 1 ,int y); //错误
2 void func(int x = 1, int y = 2); //正确
通俗来讲,当形参表中某一个变量设置了默认值,则其右边的所有值都应该设置默认值
这就是函数重载以及带默认参数的函数的用法的简要说明,本人也是正在学习阶段,如有错误或不恰当之处,请提出,希望大家支持!
9 分
2 人评分
C语言网提供由在职研发工程师或ACM蓝桥杯竞赛优秀选手录制的视频教程,并配有习题和答疑,点击了解:
一点编程也不会写的:零基础C语言学练课程
解决困扰你多年的C语言疑难杂症特性的C语言进阶课程
从零到写出一个爬虫的Python编程课程
只会语法写不出代码?手把手带你写100个编程真题的编程百练课程
信息学奥赛或C++选手的 必学C++课程
蓝桥杯ACM、信息学奥赛的必学课程:算法竞赛课入门课程
手把手讲解近五年真题的蓝桥杯辅导课程
发表评论 取消回复