【C++】函数的默认参数合集。

在进行函数参数赋值时,

complex(1,2);//r=1 i=2
complex(3);//r=3 i=0
complex();//r=0 i=0

注意

  1. 在函数原型声明中可指定默认参数;在函数定义中不可指定
complex(double r=0,double i=0);//原型声明 √ 
complex(double r=0,double i=0)//函数定义 × 

2.在函数原型中,所有带默认值的参数必须出现在未带默认值参数右边。

`void f(int i=0,int j=1,int k);//×

void f(int k,int i=0,int j=1);//√ `

3.在函数调用时,若某个参数省略,则其后所有参数均省略采用默认参数值。而不能在某个参数省略后,后面的参数仍然赋参数值。

vcomplex(,12);//× 

4.避免二义性


eg:带默认参数的函数的应用-----求平面上两点的距离。

#include<iostream>
#include<math.h>
using namespace std;
class point{
	private:
		int x,y;
		public:
			point(int x1=0,int y1=0);
			double distance(point p);
			
			
};
int main()
{
	point p1(3,4),p2;
	cout<<"distance="<<p1.distance(p2)<<endl;
	return 0;
}
point::point(int x1,int y1)
{
	x=x1;
	y=y1;
}
double point::distance(point p)
{
	double d;
	d=sqrt((x-p.x)*(x-p.x)+(y-p.y)*(y-p.y));
	return d;
}

结果为:
distance=5

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值