生活中備胎這個概念相信大家都很熟悉,不管是字面的意義,還是「備胎」這個詞的引申意,其實,不止是在生活中,在我們的c++中,「備胎」也是存在的,這就是我們今天的主題——預設引數,那麼為什麼說它是c+中的「備胎」呢,相信大家看了這篇文章就會一目了然了。
預設引數是指宣告或定義函式時為函式的引數指定乙個預設值。而在呼叫該函式時,如果沒有指定實參則採用該預設值,否則使用指定的實參。
看了預設引數的概念相信大家對於它為什麼叫c++裡的備胎已經有一定的認識了,下面通過這個例子來加深大家的印象。
例子:
#include
using
namespace std;
void
function
(int a =1)
intmain()
執行結果:
上面的**的執行結果中,第乙個是呼叫function()函式的結果,這裡我們沒有給指定的引數,所以輸出的結果是0,第二個我們呼叫的是function(10)這個函式,因為我們給了實參,所以輸出的是10。
顧名思義,就是在宣告或者定義乙個函式的時候,為函式的所有引數都指定乙個預設值。
例子:
void
function
(int a =10,
int b =30,
int c =60)
參照全預設引數的定義,半預設引數就是指在宣告或者定義乙個函式的時候,不為函式的所有引數都指定乙個預設值。
例子:
void
function
(int a ,
int b =30,
int c =60)
1.半預設引數必須從右往左依次給出,不能間隔著給出
例如:
void
function
(int a ,
int b =20,
int c )
//錯誤
2.預設引數不能在函式宣告和定義中同時出現
因為如果宣告與定義位置同時出現,而恰好兩個位置提供的值不同,此時編譯器就無法確定到底該用那個預設值
例如:
//a,h
void
function
(int a =10)
;void
function
(int a =50)
3.預設值必須是常量或者全域性變數
int d =20;
void
function
(int a = d ,
int b =20,
int c )
//錯誤
4.c語言不支 C 預設引數
一 預設引數 在c 中,可以為引數指定預設值。在函式呼叫時沒有指定與形參相對應的實參時,就自動使用預設引數。預設引數的語法與使用 1 在函式宣告或定義時,直接對引數賦值。這就是預設引數 2 在函式呼叫時,省略部分或全部引數。這時可以用預設引數來代替。注意 1 預設引數只可在函式宣告中設定一次。只有在...
C 預設引數
函式的預設引數值,即在定義引數的時候同時給它乙個初始值。在呼叫函式的時候,我們可以省略含有預設值的引數。也就是說,如果使用者指定了引數值,則使用使用者指定的值,否則使用預設引數的值。void func int i 1,float f 2.0f,double d 3.0 int main void 引...
C 預設引數
概念 在函式宣告或定義的時候給形參乙個預設的引數。這樣在呼叫該函式,如果沒有給實參,函式的這個形參就預設為這個值。使用規則 1 預設值必須從右往左給值 2 預設值必須為常量或全域性變數 const static 普通的 全域性變數 也可以作為預設引數 3 預設引數只能出現在宣告或者定義的一處 4 不...