C++函数的使用(进阶)

1.函数的默认参数定义

#include <iostream>
#include <string>
using namespace std;

int func(int a, int b, int c=10);

int main()
{
	func(10,20);
	
	system("pause");
	return 0;
}

//不能在预定义和函数定义处同时设置默认值
int func(int a, int b, int c)
{
	return a+b+c;
}

2.函数的重载

C++函数重载的方式与Java大体相同,可以去参考一下

#include <iostream>
#include <string>
using namespace std;

//函数重载
//可以让函数名相同,提高复用性

//函数重载的满足条件
//1.同一个作用域下
//2.函数名称相同
//3.函数参数类型不同,或者个数不同,或者顺序不同


void func()
{
	cout<<"func的调用"<<endl;
	
}

void func(int a)
{
	cout<<"func (int a) 的调用"<<endl;
	
}

void func(double a)
{
	cout<<"func (double a) 的调用"<<endl;
}

int main()
{
	func(10.0);
}

3.函数重载注意事项

1)引用作为重载条件

2)函数重载遇到默认参数

#include <iostream>
#include <string>
using namespace std;

//1.引用作为重载的条件
void func1(int &a)
{
	cout<<"func1(1)调用"<<endl;
}

void func1(const int &a)
{
	cout<<"func1(2)调用"<<endl;
}

//2.函数重载碰到默认参数
void func2(int a,int b=10)
{
	cout<<"func2(1)的调用"<<endl;
}

void func2(int a)
{
	cout<<"func2(2)的调用"<<endl;
}

int main()
{
	int a=10;
	func1(a);
	func1(10);
	
	//func2(10); 当函数重载碰到默认参数,出现二义性,尽量避免
	func2(10,20);
	
	system("pause");
	return 0;
}

  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值