在擴充函數功能時,不用修改以前的調用代碼函數
// 只能花半徑爲radius的圓,顏色爲黑色 void drawCircle(int radius) { // draw } --- 修改上面的代碼而不是重載 --- // 能夠指定顏色,默認color爲1,也就是黑色 // 假若有地方是這樣調用的drawCircle(1),那麼它會相等於drawCircle(1, 1) void drawCircle(int radius, int color = 1) { // draw }
定義函數的時候可讓最右邊的連續若干個參數有缺省值設計
定義code
// 正確 void func( int x1, int x2 = 2, int x3 = 3) { } // 錯誤,帶缺失值的參數必須放在最右邊 void func( int x1, int x2 = 2, int x3) { }
調用get
func(10) ; //等效於 func(10,2,3) func(10,8) ; //等效於 func(10,8,3) func(10, , 8) ; //不行,中間不能跳過
參考:C++程序設計程序設計