預設引數與佔位引數

2021-09-22 21:33:33 字數 714 閱讀 1881

c++中可以在函式宣告時為引數提供乙個預設值,當函式呼叫時沒有指定這個引數的值,編譯器會自動用預設值代替

從第乙個預設引數開始,右邊的所有引數均需要使用預設引數列表

錯誤的做法:

int a(int a,int b=1,int c){}

正確的做法:

int b(int a,int b=1,int c=2){}

**例項:

int test(int a,int b=3,int c=2)
函式佔位引數 

佔位引數只有引數型別宣告,而沒有引數名宣告

一般情況下,在函式體內部無法使用佔位引數

當宣告函式帶有佔位引數時,若佔位引數沒有被定義為預設引數,呼叫函式時需要填滿所有引數列表

示例:

函式宣告佔位引數:

int a(int a,int b,int)

錯誤呼叫:

a(1,2);

正確呼叫:

a(1,2,3);

可以將佔位引數與預設引數結合起來使用,為以後程式的擴充套件留下線索 ,相容c語言程式中可能出現的不規範寫法

int a(int a, int b, int = 0)

如果預設引數和佔位引數在一起,都能呼叫起來:

a(1, 2);

a(1, 2, 3);

預設引數和佔位引數

預設引數 c 中可以在函式宣告時為引數提供乙個預設值,當函式呼叫時沒有指定這個引數的值,編譯器會自動用預設引數代替 void myprint intx 5 void main 函式預設引數規則 只有引數列表後面部分的引數才可以提供預設引數值 一旦在乙個函式呼叫中開始使用預設引數值,那麼這個引數值後的...

C C 引數 預設引數 佔位符引數

不多說了,直接看 在c c 中表示空的引數列表 void test void 在c中表示不確定的引數數目,c 中表示空的引數列表 void test1 在c中編譯失敗,必須至少有乙個顯示引數 在c 中表示可變的引數數目 void test2 c 預設引數,c不支援 預設引數同函式過載一樣,給程式設計...

C 引數 預設引數和佔位引數

c 在宣告函式原型的時可為乙個或者多個指定預設的引數值,當函式呼叫的時候沒有給這個引數傳遞值,編譯器會自動用預設值代替 void test01 int x 100,int y 200 intmain 2.如果函式宣告和定義分開,函式宣告設定了預設引數,函式的定義不能在設定預設引數 void test...