【C++】函数缺省参数的作用
用法:void func(int param1, int param2 = 1, int param = 3) {}
func(10); //等同于func(10, 1 , 3)
func(10,8); //等同于func(10, 8, 3)
func(10, , 3);//編譯錯誤,只能最右邊的連續(xù)若干個參數(shù)缺省
?
意義:函數(shù)參數(shù)可缺省的目的在于提高成虛的可擴(kuò)展性。
?
例如在一個系統(tǒng)中,有一個繪制圓形的方法drawCircle(int radius, int x, int y), 其有三個參數(shù),分別代表了圓的半徑,圓心的坐標(biāo),這個方法在系統(tǒng)的多處被使用。
現(xiàn)在需要給這個方法加一個繪制顏色的參數(shù),之前的圓形默認(rèn)顏色都是黑色,并且不需要進(jìn)行顏色修改。有兩種方法可以解決這個問題:
1、直接修改為drawCircle(int radius, int x, int y, int color),并且修改每一處使用到該方法的地方;
2、將顏色設(shè)為缺省參數(shù),drawCircle(int radius, int x, int y, int color=BLACK);
現(xiàn)分析兩種方法的優(yōu)缺點(diǎn),第一種方法很明顯工作量大并且意義不大,因為大部分使用了該方法的地方不需要進(jìn)行顏色設(shè)置,可以說是出力不討好。而第二種方法,并不需要去修改之前已經(jīng)使用過的地方,因為顏色參數(shù)默認(rèn)值為黑色,而在未來要使用drawCircle的地方可以進(jìn)行顏色設(shè)置。
?
這就是缺省參數(shù)的使用意義,方便系統(tǒng)的擴(kuò)展。
轉(zhuǎn)載于:https://www.cnblogs.com/puyangsky/p/5238188.html
總結(jié)
以上是生活随笔為你收集整理的【C++】函数缺省参数的作用的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【学习笔记】观察者模式
- 下一篇: 《看门狗》真人版跑酷!