C 函式的預設引數補充

2022-08-11 13:54:15 字數 1089 閱讀 4900

1、函式定義時指定預設引數

在c++中,定義函式時可以給形參指定乙個預設的值,這樣呼叫函式時如果沒有給這個形參賦值(沒有對應的實參),那麼就使用這個預設的值。也就是說,呼叫函式時可以省略有預設值的引數。如果使用者指定了引數的值,那麼就使用使用者指定的值,否則使用引數的預設值。

所謂預設引數,指的是當函式呼叫中省略了實參時自動使用的乙個值,這個值就是給形參指定的預設值。

下面是乙個簡單的示例:

#includeusing namespace std;

//帶預設引數的函式

void func(int n, float b=1.2, char c='@')

void func(int a, int b, int c=20)

但這樣寫不可以:

void func(int a, int b=10, int c=20, int d)

void func(int a, int b=10, int c, int d=20)

預設引數並非程式設計方面的重大突破,而只是提供了一種便捷的方式。在以後設計類時你將發現,通過使用預設引數,可以減少要定義的析構函式、方法以及方法過載的數量。

2、函式宣告時指定預設引數

除了函式定義,也可以在函式宣告處指定預設引數。不過當出現函式宣告時情況會變得稍微複雜,有時候可以在宣告處和定義處同時指定預設引數,有時候只能在宣告處指定:

#include using namespace std;

void func(int a, int b = 10, int c = 36);

int main()

void func(int a, int b = 10, int c = 36)

**:

#include using namespace std;

void func(int a, int b = 10, int c = 36)

這種宣告方式是正確的。第一次宣告時為 c 指定了預設值,第二次宣告時為 b 指定了預設值;第二次宣告是新增預設引數。需要提醒的是,第二次宣告時不能再次給 c 指定預設引數,否則就是重複宣告同乙個預設引數。

C (帶有預設引數的函式引數)預設函式引數

預設引數?在c 中,允許實參的個數與形參的個數不同。在宣告函式原型時,為乙個或者多個形參指定預設值,以後呼叫這個函式時,若省略某乙個實參,c 則自動的以預設值作為相應引數的值。實列說明 includeusing namespace std int add int x 4,int y 7 int ma...

C 函式 預設引數的函式

1 預設引數的目的 c 可以給函式定義預設引數值。通常,呼叫函式時,要為函式的每個引數給定對應的實參。例如 void delay int loops 函式宣告 void delay int loops 函式定義 void point int a void point 可以用下面的預設引數的函式來替代...

C 函式的預設引數

c 中允許為函式提供預設引數,又名預設引數。有函式宣告 原型 時,預設引數可以放在函式宣告或者定義中,但只能放在二者之一 double sqrt double f 1.0 函式宣告 double sqrt double f 函式定義 沒有函式 原型 時,預設引數在函式定義時指定.沒有 函式宣告 do...