程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 編程語言 >> C語言 >> C++ >> C++入門知識 >> C++默認參數值函數,默認參數函數

C++默認參數值函數,默認參數函數

編輯:C++入門知識

C++默認參數值函數,默認參數函數


1.默認參數值的函數

  C++語言允許在定義函數時給其中或某些形式參數(形參)指定默認值,方法就是在相應的形參後面寫上“=默認值”,如果省略了對應位置上的實參的值,則在執行被調函數時以該形參的默認值進行運算。

 

本人自學,教材可能有點老,有問題的話求大家指正!!!謝謝!!!

 

 

2.默認參數值函數注意事項

  • 默認函數一般在函數聲明中設置。如果程序中既有函數聲明又有函數定義,則定義函數時不允許再定義參數的默認值;如果程序中只有函數定義而沒有函數聲明,則默認參數才可以出現在函數定義中;
  • 默認參數的順序。如果一個函數中有多個默認參數,則參數分布中默認參數應從右至左逐個定義。也就是說,如果你要給默認值的這個形參右邊還有沒有給默認值的形參,那麼,這樣定義是錯誤的。如:

 

void func( int a=1, float b, long c=20 );    //錯誤
void func( int a, float b=2, long c=30 );    //正確

 

 

例題:定義、測試重載函數。

#include<iostream>
using namespace std;

int sum(int i,int j=10);    //有函數聲明
int sum(int i,int j)
{
    return i+j;
}

void print(int i, int j, int sum=0)     //無函數聲明
{
    cout << "i:" << i << endl;
    cout << "j:" << j << endl;
    cout << "sum:" << sum << endl;
}

int main()
{
    int a=3;
    int b=7;
    cout << "sum(a):" << sum(a) << endl;
    cout << "sum(a,b):" << sum(a,b) << endl;
    cout << "print(a,b):" << endl;
    print(a,b);
    cout << "print(a,b,sum(a,b)):" << endl;
    print(a,b,sum(a,b));
    return 0;
}


//菜鳥,求大家批評指教,代碼編寫習慣和規范等等!!!謝謝!!!

 

 

 

本人自學,教材可能有點老,有問題的話求大家指正!!!謝謝!!!

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved