參考連結
- https://www.bilibili.com/video/BV1et411b73Z?p=95
函數的預設參數
在C++中,函數的形參清單中的形參是可以有預設值的。
- 如果某個位置參數有預設值,那麼從這個位置往後,從左向右,必須都要有預設值
- 如果函數聲明有預設值,函數實作的時候就不能有預設參數
函數占位參數
作用
函數的形參清單裡可以有占位參數,用來做占位,調用函數時必須填補該位置。
文法
傳回值類型 函數名 (資料類型){}
例如:
占位參數還可以有預設參數
例如
函數重載
作用
函數名可以相同,提高複用性
函數重載滿足條件
- 同一個作用域下
- 函數名相同
- 函數參數類型不同或者個數不同或者順序不同
函數重載注意事項
- 函數的傳回值不可用作為函數重載的條件
-
引用作為重載條件
int &a和const int &a可以作為重載條件
例如
void func(int &a){} // 使用int a = 10; func(a);可以調用
void func(const int &a){} // 使用func(10);可以調用
-
函數重載碰到函數預設參數
當函數重載碰到預設參數,出現二義性,報錯,盡量避免這種情況。