为什么要有这玩意
在扩充函数功能时,不用修改之前的调用代码
// 只能花半径为radius的圆,颜色为黑色
void drawCircle(int radius) {
// draw
}
--- 修改上面的代码而不是重载 ---
// 可以指定颜色,默认color为1,也就是黑色
// 假如有地方是这样调用的drawCircle(1),那么它会相等于drawCircle(1, 1)
void drawCircle(int radius, int color = 1) {
// draw
}
用法
定义函数的时候可以让最右边的连续若干个参数有缺省值
定义
// 正确
void func( int x1, int x2 = 2, int x3 = 3) {
}
// 错误,带缺失值的参数必须放在最右边
void func( int x1, int x2 = 2, int x3) {
}
调用
func(10) ; //等效于 func(10,2,3)
func(10,8) ; //等效于 func(10,8,3)
func(10, , 8) ; //不行,中间不能跳过
参考:C++程序设计
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。