C++第六篇:函式的預設引數
阿新 • • 發佈:2020-12-16
技術標籤:C/C++
在C++中,定義函式的時候是可以給我們的函式形參指定一個預設引數值 (這個比較稀奇哦,我至少是第一次見,見識太少了吧_ )具體的說就是沒有給這個引數賦值(傳入實參)的話我們的函式就會使用預設值
具體形式:
//函式引數預設值
void max(int a,char ar = '@',float fo = 3.14){}
相信小夥伴們都想到了一個問題了吧,上面說到“如果沒有給這個引數賦值。。”,函式的引數還可以不賦值的嗎 。。這個真的不清楚 好吧,來試一下吧 書寫以下程式碼:
#include <iostream>
using namespace std;
//函式引數預設值
void max(int a,char ar = '@',float fo = 3.14)
{
cout << a << " " << ar << " " << fo << endl;
}
int main()
{
//不傳入其他兩個有預設引數的值
max(1);
while (1);
}
執行,走起。。
結果不出所料,預設值還是好用的
當然,如果你的引數沒有預設值,那麼你再呼叫該函式的時候,就必須傳入一個值了,否則會報錯
需要注意一點:
在為形參指定預設引數的時候,有預設引數的形參必須放在最後。也就是說,從左往右 有預設引數的形參,之後的每一個引數都必須要有預設引數。
最後一點:預設值除了用資料常量,也可以用函式表示式 ,來個
#include <iostream>
using namespace std;
int b = 7;
void max(int a,char ar = '@',float fo = b + 3.14)
{
cout << a << " " << ar << " " << fo << endl;
}
int main()
{
//不傳入其他兩個有預設引數的值
max(1);
while (1);
}