C++学习 –函数提高

  • Post author:
  • Post category:其他




函数提高



函数默认参数

在C++中,函数的形参列表中的形参是可以有默认值的。

语法: 返回值类型 函数名 (参数 = 默认值)

int func(int a, int b=20, int c=30)
{
	return a+b+c;
}
//注意事项:
//1,如果某个位置有了默认参数,从这个位置开始从左到右必须有默认参数
int main ()
{
	func(10)//得60
	func(10,30)//得70
	//如果传入数据,就用传入的数据,如果没有就用默认值
}




函数的占位参数

C++中函数的形参列表里可以有位参数用来做占位,调用函数时必须填补该位置


语法:

返回值类型 函数名 (数据类型){}

//函数占位参数,占位参数也可以有默认参数
void func(int a, int){}
void func(int a, int = 10){}



函数重载



函数重载概述


作用:

函数名可以相同,提高复用性


函数重载的满足条件:


同一作用域下

函数名称相同

函数参数

类型不同

或者

个数不同

或者

顺序不同



注意:

函数的返回值不可作为函数重载的条件

//函数重载
//可以让函数名称相同,提高复用性
void func() {}
void func(int a) {}
void func(double a) {}
void func(int a, int b) {}
void func(double a, int b) {}
void func(int b, double a) {}



函数重载的注意事项


·

引用作为函数重载条件


·

函数重载碰到函数默认参数

//1,引用作为函数重载条件
void fun(int & a){ }
void fun(const int &a){}
int a=10;
fun(a);//会调用 fun(int %a)函数
fun(10);//会调用 fun(const int &a)
//函数重载碰到函数默认参数
void func(int a,int b = 10){}
void func(int a){}
//func(10)//出现二义性,报错



版权声明:本文为weixin_45673224原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。