基于linux c++學(xué)習(xí)筆記3(函數(shù))
函數(shù)調(diào)用
主調(diào)(客戶)函數(shù)與被調(diào)(服務(wù)器)函數(shù)
函數(shù)調(diào)用時的參數(shù)和返回值
函數(shù)原型
函數(shù)實現(xiàn)和調(diào)用接口原型,作為函數(shù)接口,一般出現(xiàn)在頭文件中。
格式:函數(shù)返回值類型 函數(shù)名稱(形式參數(shù)列表)
函數(shù)實現(xiàn)
函數(shù)定義,使用編程語言給出函數(shù)的執(zhí)行步驟
函數(shù)返回值
函數(shù)完成后帶來的結(jié)果,主調(diào)函數(shù)可以使用
謂詞函數(shù)
返回bool類型值的函數(shù)
表示某項任務(wù)是否完成或者某個條件是否滿足
判斷給定年份是否是閏年的謂詞函數(shù)實現(xiàn):
bool IsLeap(int year)
{
? return year%4 == 0 && year%100 != 0 || year%400 == 0;
}
比較兩個整數(shù)大小的函數(shù)實現(xiàn),函數(shù)在執(zhí)行到第一條return語句終止:
int compare(int x,int y)
{
? if(x == y)
? ? return 0;
? else if(x > y)
? ? return 1;
? else
? ? return -1;
}
函數(shù)重載
定義同名但參數(shù)不完全相同的函數(shù)
函數(shù)調(diào)用
參數(shù)傳遞機制:值傳遞與引用傳遞
編程思路:自頂向下逐步求精,從整體到局部
值傳遞機制
形式參數(shù)在函數(shù)調(diào)用時才分配存儲空間,并接收實際參數(shù)值
實際參數(shù)可以為復(fù)雜的表達式,在函數(shù)調(diào)用前獲得計算
形參和實參可同名,也可不同名
參數(shù)較多時,實參值逐一賦值,必須保持數(shù)目 類型 順序的一致
值的復(fù)制過程是單向不可逆的,函數(shù)內(nèi)部對形參值的修改不會反映到實參中去
函數(shù)參數(shù)一般為函數(shù)輸入集的一部分,函數(shù)輸出集一般使用返回值表示,只有使用特殊手段才可以將函數(shù)參數(shù)作為函數(shù)輸出集的一部分
函數(shù)調(diào)用??蚣?,略