默認(rèn)參數(shù)是函數(shù)聲明中提供的值,如果函數(shù)的調(diào)用者未提供具有默認(rèn)值的參數(shù)值,則該值由編譯器自動(dòng)分配。
以下是一個(gè)簡單的C ++示例,以演示默認(rèn)參數(shù)的用法。我們不必編寫3個(gè)求和函數(shù),只需將第3個(gè)和第4個(gè)參數(shù)使用默認(rèn)值即可使用一個(gè)函數(shù)。
輸出:2 5 5 0 8 0
當(dāng)函數(shù)重載與默認(rèn)值一起完成時(shí)。然后,我們需要確保它不會模棱兩可。
如果模棱兩可,編譯器將拋出錯(cuò)誤。以下是上述程序的修改后的版本。
Error:
關(guān)鍵點(diǎn):
默認(rèn)參數(shù)與常量參數(shù)不同,因?yàn)椴荒芨某A繀?shù),而如果需要,則可以覆蓋默認(rèn)參數(shù)。
調(diào)用函數(shù)為其提供值時(shí),默認(rèn)參數(shù)將被覆蓋。例如,調(diào)用函數(shù)sum(10,15,25,30)會將z和w的值分別覆蓋為25和30。
在調(diào)用函數(shù)期間,從調(diào)用函數(shù)到被調(diào)用函數(shù)的參數(shù)從左到右復(fù)制。因此,sum(10,15,25)會將10、15和25分配給x,y和z。因此,默認(rèn)值僅用于w。
將默認(rèn)值用于函數(shù)定義中的參數(shù)后,該參數(shù)的所有后續(xù)參數(shù)都必須具有默認(rèn)值。也可以說是默認(rèn)參數(shù)是從右到左分配的。例如,以下函數(shù)定義無效,因?yàn)槟J(rèn)變量z的后續(xù)參數(shù)不是默認(rèn)變量。
int sum(int x, int y, int z=0, int w)
以上。
每天學(xué)點(diǎn)小知識,希望對你有幫助~
另外如果你想更好的提升你的編程能力,學(xué)好C語言C++編程!彎道超車,快人一步!筆者這里或許可以幫到你~
編程學(xué)習(xí)書籍分享:
編程學(xué)習(xí)視頻分享:
分享(源碼、項(xiàng)目實(shí)戰(zhàn)視頻、項(xiàng)目筆記,基礎(chǔ)入門教程)
歡迎轉(zhuǎn)行和學(xué)習(xí)編程的伙伴,利用更多的資料學(xué)習(xí)成長比自己琢磨更快哦!
轉(zhuǎn)載請注明來自夕逆IT,本文標(biāo)題:《c語言default(CC編程筆記C基礎(chǔ)部分丨默認(rèn)參數(shù))》

還沒有評論,來說兩句吧...