C++缺省參數(shù)的理解
什么叫缺省參數(shù)?
缺省參數(shù)是聲明或定義函數(shù)時(shí)為函數(shù)的參數(shù)指定一個(gè)默認(rèn)值。在調(diào)用該函數(shù)時(shí),如果沒有指定實(shí)參則采用該默認(rèn)值,否則使用指定的實(shí)參。
注意:要想省略參數(shù),聲明或者定義內(nèi)必須指定默認(rèn)值
void TestFunc(int a = 0) { cout<<a<<endl; } int main() { TestFunc(); // 沒有傳參時(shí),使用參數(shù)的默認(rèn)值 TestFunc(10); // 傳參時(shí),使用指定的實(shí)參 }
第一次調(diào)用時(shí)沒有傳參,默認(rèn)使用定義中的參數(shù)值
第二次調(diào)用時(shí)指定實(shí)參,使用了指定的實(shí)參
有沒有一種備胎的感覺,你給我了我就用你的,你不給我我還有備用的
缺省多個(gè)參數(shù)的情況
1.全缺省
即傳參數(shù)所有參數(shù)都省略(會(huì)默認(rèn)使用定義或聲明的參數(shù))
2.半缺省
比如應(yīng)該傳兩個(gè)參數(shù)但直傳了一個(gè),應(yīng)該傳三個(gè)只傳了兩個(gè),參數(shù)傳的數(shù)量不全
感受一下很容易理解:
注意:
1.缺省參數(shù)不能間隔著給,必須依次給
2.缺省參數(shù)不能在函數(shù)聲明和定義中同時(shí)出現(xiàn)(如果默認(rèn)值不同編譯器會(huì)不確定該使用 哪一個(gè)缺省值)
3.缺省值必須是常量或者全局變量
4.c語言編譯器不支持
總結(jié)
本篇文章就到這里了,希望能夠給你帶來幫助,也希望您能夠多多關(guān)注腳本之家的更多內(nèi)容!
相關(guān)文章
一篇文章帶你了解C++ static的作用,全局變量和局部變量的區(qū)別
這篇文章介紹了C++ static的作用,全局變量和局部變量的區(qū)別,需要的朋友可以過來參考下,希望能夠給你帶來幫助2021-09-09