上传新文件

上级 230fe303
//下面介绍C++的另一项新内容——默认参数。
//默认参数指的是当函数调用中省略了实参时自动使用的一个值。
/*
* 如何设置默认值呢﹖必须通过函数原型。
由于编译器通过查看原型来了解函数所使用的参数数目,
因此函数原型也必须将可能的默认参数告知程序。
方法是将值赋给原型中的参数。
*/
//例如:
char* left(const char* str, int n = 1);
//注意:对于带参数列表的函数,必须从右向左添加默认值。
//也就是说,要为某个参数设置默认值,
//则必须为它右边的所有参数提供默认值:
int harpo(int n, int m = 4, int j = 5); //VALID正确
int chico(int n, int m = 6, int j); //INVALID错误
int groucho(int k = 1, int m = 2, int n = 3);//VALID正确
//例如,harpo()原型允许调用该函数时提供1个、2个或3个参数:
int beeps = harpo(2); //same as harpo(2,4,5)
beeps = harpo(1, 8); //same as harpo(1,8,5)
beeps = harpo(8, 7, 6); //no default arguments used
//实参按从左到右的顺序依次被赋给相应的形参,而不能跳过任何参数。
//因此,下面的调用是不允许的:
beeps = harpo(3, , 8); //invalid,doesn't set m to 4
/*
* 默认参数并非编程方面的重大突破,而只是提供了一种便捷的方式。
在设计类时您将发现,通过使用默认参数,可以减少要定义的析构函数、
方法以及方法重载的数量。
*/
\ No newline at end of file
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册