1、函式引數的擴充套件。
1、函式引數的預設值。
1、c++在函式宣告時為函式提供乙個預設的引數值。當函式呼叫沒有引數的值的時候,使用預設引數。
**:void test(int x = 0);
int main()
void test(int x)
2、引數預設值必須在函式宣告中指定。
3、函式定義中是否可以存在引數的預設值?
2、引數的預設值必須從右向左提供。(設定)
函式呼叫使用了預設值,則後續引數都必須使用預設值。(呼叫:匹配從左到右)。
int add(int x, int y = 1; int z = 2)
add(0);//x = 0 y = 1 z = 2
add(2,3);//x = 2 y = 3 z = 2
add(1,2,3)//x = 1 y = 2 z= 3
3、函式的佔位引數
1、c++中可以為函式提供佔位引數。
2、佔位符只有函式引數型別宣告,沒有引數宣告。
3、一般情況下無法在函式體內使用佔位引數。
**:int fun(int x, int )
//......
fun(1,2);//ok
4、佔位符引數的意義
1、佔位引數與預設引數結合起來使用。
2、相容c語言中可能出現的不規範的寫法。
3、void func(); 與 void func(void);//在c語言中這兩種宣告方式不等價,在c++中是等價的。所以為了相容c語言,可以使用函式預設引數
小結: 1、c++中支援函式引數的預設值。
2、如果函式呼叫時沒有使用引數值,則使用預設引數值。
3、引數的預設值必須從右向左提供。
4、當函式呼叫中使用了預設引數值,則後續引數必須使用預設引數值。
5、c++中支援佔位引數,用於相容c語言中的不規範寫法。
函式的擴充套件 rest引數
es6 引入 rest 引數 形式為.變數名 用於獲取函式的多餘引數,這樣就不需要使用arguments物件了。rest 引數搭配的變數是乙個陣列,該變數將多餘的引數放入陣列中。function add values return sum add 2,5,3 10上面 的add函式是乙個求和函式,利...
C 函式引數的擴充套件
1 函式引數的預設值 c 中可以在函式宣告時為引數提供乙個預設值,當函式呼叫時沒有提供引數的址,則使用預設值 int mul int x 0 int main int argc,char ar int mul int x 引數的預設值必須在函式宣告中指定 問題 函式定義中是否可以出現引數的預設值?當...
6 函式引數擴充套件
1 函式引數的預設值 舉個例子 include int mul int x 0 前項宣告 int main int mul int x include int mul int x 0 int main 其實不寫宣告,直接在函式定義裡的引數中寫預設值也是可以的。如上所示,當我們的函式沒有提供引數時,會...