首頁>技術>

預設引數是函式宣告中提供的值,如果函式的呼叫者未提供具有預設值的引數值,則該值由編譯器自動分配。

以下是一個簡單的C ++示例,以演示預設引數的用法。我們不必編寫3個求和函式,只需將第3個和第4個引數使用預設值即可使用一個函式。

輸出:2 5 5 0 8 0

當函式過載與預設值一起完成時。然後,我們需要確保它不會模稜兩可。

如果模稜兩可,編譯器將丟擲錯誤。以下是上述程式的修改後的版本。

Error:

關鍵點:

預設引數與常量引數不同,因為不能更改常量引數,而如果需要,則可以覆蓋預設引數。

呼叫函式為其提供值時,預設引數將被覆蓋。例如,呼叫函式sum(10,15,25,30)會將z和w的值分別覆蓋為25和30。

在呼叫函式期間,從呼叫函式到被呼叫函式的引數從左到右複製。因此,sum(10,15,25)會將10、15和25分配給x,y和z。因此,預設值僅用於w。

將預設值用於函式定義中的引數後,該引數的所有後續引數都必須具有預設值。也可以說是預設引數是從右到左分配的。例如,以下函式定義無效,因為預設變數z的後續引數不是預設變數。

int sum(int x, int y, int z=0, int w)

以上。

另外如果你想更好的提升你的程式設計能力,學好C語言C++程式設計!彎道超車,快人一步!筆者這裡或許可以幫到你~

程式設計學習書籍分享:

程式設計學習影片分享:

分享(原始碼、專案實戰影片、專案筆記,基礎入門教程)

12
  • BSA-TRITC(10mg/ml) TRITC-BSA 牛血清白蛋白改性標記羅丹明
  • 位元組跳動面試答案:無序陣列的中位數快排思想O(N)時間複雜度