带默认参数德函数和函数重载

一.带默认参数的函数

如果在函数说明或函数定义中为形参指定一个默认值,则称此函数为带默认参数的函数。
指定了初始值的参数称为默认参数。如果函数有多个默认参数,则默认参数必须是从右向左定义,并且在一个默认参数的右边不能有未指定默认值的参数。
例如:

void fun(int a,int b=1,int c=4,int d=5);

此函数声明是正确的,但下面这个则是错误的:

void fun(int a=3,int b=1,int c,int d);

注意:默认参数值的说明必须出现在函数调用之前,如果存在函数原型,则形参的默认值应在函数原型中指定。若函数原型中已给出了形参的默认值,则在函数定义中不得重复指定。

二.函数重载

c++语言编译系统允许为两个或两个以上的函数取相同的函数名,但形参的个数或者形参的类型不应相同。编译系统会根据实参和形参的类型及个数的最佳匹配,自动确定调用哪一个函数,这就是所谓的函数重载。

c++语言允许重载函数有数量不同的参数个数。当函数名相同而参数个数不同时,c++语言会自动按参数个数定向到正确的要调用的函数。
重载函数应用实例:

#include<iostream>
using namespace std;
int add(int x,int y)
{
int sum;
sum=x+y;
return sum;
}
int add(int x,int y,int z)
{
int sum;
sum=x+y+z;
return sum;
}
int main()
{
int a,b;
a=add(5,100);
b=add(5,10,20);
cout<<"a="<<a<<endl;
cout<<"b="<<b<<endl;
return 0;
}

使用函数重载时要注意以下两点:

  • 不可以定义两个具有相同名称、相同参数和相同参数个数,只是函数返回值不同的函数。
  • 如果某个函数参数有默认值,必须保证其参数默认后调用形式不与其它函数混淆。
    类的成员函数同样也可以重载,类成员函数的重载与全局函数的重载方法相同。
  • 2
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值